正因为生来什么都没有,因此我们能拥有一切。(o゚▽゚)o

  • 微信公众号
  • Diary

    jingyile·2018-11-17·146 次阅读

    2018年11月17日                                   星期六                               Cold

    作为一个迷茫的本科生,最近是更加迷茫了,只想感慨一句,网络知识深似海啊!

    临近期末,周一到周五几乎都满课,各类课设也是多了起来。

    前端需要做一个校园BBS论坛网站,功能包括用户的登录与注册,帖子的发布,评论和查看等。

    这个东西,还真是可大可小,可好好做亦可糊弄了事。

    都大三了,还是好好动手做吧。本着“兵马未动,粮草先行”的战略思想,当然是从数据库入手。

    之前分别学了SQL Server和Oracle,可惜学的都不咋滴,也就写写简单的Select了。

    网上总结的这3个数据库总体的特点如下:

    一、 Oracle:最贵,功能最多,安装最不方便,Oracle环境里的其他相关组件最多,支持平台数据量一般,使用中等方便,开发中等方便,不开源,速度最慢、最安全。

    二、 Microsoft SQL Server:中等贵,功能最少,安装中等方便,sqlserver环境里的其他相关组件最少,支持平台最少,使用最方便,开发最方便,运维最方便,不开源,速度中等,一般安全

    三、 Mysql:免费,功能中等,安装最方便,mysql环境里的其他相关组件数量中等,支持平台最多,使用最不方便,开发最不方便,运维最不方便,有开源版本,速度最快,最不安全。

    所以,这次我选择用MySQL数据库。

    说起这个安装,是真的辛酸,说好的安装最方便,由于个人的一些不当操作导致超级麻烦了。(也只能怪自己喽)

    一开始在菜鸟联盟看的MySQL安装教程,根据它的方法进行安装,由于下的是压缩包,即一个免安装版,所以需要自己配置my.ini文件。

    可是不管根据上面的教程还是网上其他地方的配置教程,都在初始化时(mysqld --initialize --console)出现了一些问题。

    好不容易弄好my.ini文件,成功获取到root用户的初始密码,却发现登录时验证出错,据说是因为密码错误。

    根据网上的教程改了改,发现还是不行。便开始重新用.msi文件进行安装。

    由于之前的版本也没个卸载程序啥的,只是通过删除文件清楚了,却忽略了注册表残留。

    根据网上给的方法清空,重装好几次还是不行,每次都卡死在start service,试了网上各类办法均无果, 到现在不明白为啥,真的已经清理的很干净了啊...

    只好用最莽的办法,直接重装系统,说起来装系统还是快的啊,也可以很好地解决问题。

    重装完系统后飞速装上了MySQL5.6,畅通无阻,可算是了了一桩大事。

     

    那么之前的一些别的东西就得重新配置了,例如JDK、Tomcat等。

    这里归纳下环境变量的配置,系统变量非用户变量

    (1)新建->变量名"JAVA_HOME",变量值"C:\Java\jdk1.8.0_05"(即JDK的安装路径
    (2)编辑->变量名"Path",在原变量值的最后面加上“;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
    (3)新建->变量名“CLASSPATH”,变量值“.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

    验证:控制台输java,javac,java -version(注意有空格,今天输错了,一直以为没有配置成功...)

    再归纳一些常用的东西吧

    MySQL常用操作

    利用JDBC连接MySQL数据库常用操作,需要自己下载所需jar包并导入.

    Statement:Statement 是 Java 执行数据库操作的一个重要方法,用于在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句。

    Statement对象,用于执行不带参数的简单SQL语句。

    Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。使用哪一个方法由 SQL 语句所产生的内容决定。

    方法 executeQuery 用于产生单个结果集的语句,例如 SELECT 语句。

    方法 executeUpdate 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。INSERT、UPDATE 或 DELETE 语句的效果是修改表中零行或多行中的一列或多列。executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数)。对于 CREATE TABLE 或 DROP TABLE 等不操作行的语句,executeUpdate 的返回值总为零。

    方法 execute 用于执行返回多个结果集、多个更新计数或二者组合的语句。不常用...

    ResultSet类是一种数据库查询结果存储类,就是当查询数据库的时候,可以将查询的结果放在具体的ResultSet对象中,其实我们把这种存储查询结果的ResultSet对象叫做ResultSet结果集。ResultSet结果集有一个索引指针,最初这个指针是指向第一条记录的前一个位置,也就是没有指向任何内容,使用x.next()方法就会使指针往后移动指向下一个记录,所以一定要先执行一次next()函数才会让指针指向第一条记录。

    ResultSet相关ResultSetMetaData详细

    尝试新建一个JSP文件仅仅用于在其他每个页面之间传值,发现很难做到,很麻烦,最后用的session

    关于JSP的session

    一个网页中把变量username以username为名字保存在session上
    <%session.setAttribute("username",username);%>
    在另一个页面中通过getAttribute方法取得username的值
    <%String username = (String)session.getAttribute("username");%>

    "username"是传递变量的名字 username 是变量
    session是一次会话只要浏览器不关闭就不会关闭会话 一般默认保存30分钟可以根据自己的需要更改

    中文乱码是一个很麻烦的东西,大概由于eclipse、MySQL使用的并非同一编码导致。

    关于eclipse的syso快捷键为ALT+/ ,一段时间不用老是会忘记。

    Tomcat 

    启动 startup.bat   关闭 shutdown.bat

    测试访问 http://localhost:8080/

    Git同步仓库,cd 到文件目录
    然后
    git add 文件名
    git commit -m "描述"
    git statues
    git push

    控制台定位

    直接输入盘符加冒号可以跳转到相应的盘去,如 d:
    cd 路径 (子目录)
    cd \路径 (并列)

    一个超级实用的技巧,打开文件夹在状态栏输CMD可以直接定位。


    正因为生来什么都没有,因此我们能拥有一切。(o゚▽゚)o

    
    
    查看评论

    Post a new comment

    Post a new comment
    欢迎回来 , [ 修改 ]




    加载中……