忙了很久,又对AJAX技术有了一些深的了解
out.flush()会阻断response.sendRedirect(“”)方法的执行
忙了很久,又对AJAX技术有了一些深的了解
out.flush()会阻断response.sendRedirect(“”)方法的执行
AJAX,Asynchronous JavaScript and XML.
后悔,入门前端的时候,没有认真学好JS和JQuery。
入门AJAX的时候,一定要提前学好HTML、CSS、Javascript及JQuery,这样入门就会变的非常简单。
一开始听的时候感觉很懵,晚上理了理思路,终于明白了一些
AJAX是用“XMLHttpRequest 对象”操作,与数据库交互。其实就是通过JS的操作,来获取数据,因为JS在网页上可以实时更新,所以用了Js这一特性,做到了网页的异步刷新操作。
而JSP是需要服务器来生成新的页面。通过每一次的请求。返回一个新生成的HTML页面,所以网页总是需要刷新,才能看到最新。
所以,通过JS创建XMLHttpRequest 对象,然后通过对象的方法调用,来与数据交互操作,就可以使用AJAX技术了
理解了这些基本上就差不多入门了,知道了AJAX到底是个什么东西?
然后就是使用了,按照步骤,一步步创建对象,调用方法,获得返回值,操作显示,就可以了。
太晚了,明天再补。
这几天写Web项目的时候,控制台总是输出这样一句话
Sat Oct 31 10:42:24 CST 2020 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
去Google翻译了一下,
Sat Oct 31 10:42:24 CST 2020警告:不建议在没有服务器身份验证的情况下建立SSL连接。 根据MySQL 5.5.45 +,5.6.26 +和5.7.6+的要求,如果未设置显式选项,则默认情况下必须建立SSL连接。 为了与不使用SSL的现有应用程序兼容,将verifyServerCertificate属性设置为’false’。 您需要通过设置useSSL = false显式禁用SSL,或者设置useSSL = true并提供信任库以进行服务器证书验证。
看了看,应该是要求设置userSSL,所以一般在数据库连接url末尾加上“useSSL=false”就可以了。
不过,如果使用JNDI方式连接,在context.xml里面修改就不能直接添加了
会出现报错“The reference to entity “useSSL” must end with the ‘;’ delimiter.”
仔细研究了一下,在这个xml文件中修改的话, &符号是需要需要转义的,所以改成&就可以了,也就是说改成
&useSSL=false"
就正确了,这样就不报错了。
附:HTML转义字符参考网站 https://tool.oschina.net/commons?type=2
一般写DAO层的时候,总喜欢先去数据库管理软件里测试一下语句,然后复制过来直接用。
今天测试的时候,怎么都提示”Parameter index out of range”,仔细检查完其他问题,找不到错误。
比对了以前写的代码,才意识到,传值进去的是String类型,就不需要在SQL语句上再加’ ‘,了,去掉以后,就可以正常使用了。
这学期刚开始入门JavaWeb,学的有点乱,一直没搞明白Tomcat的一些设置,今天来慢慢填坑。
首先是,Eclipse里的Tomcat设置,
在写JavaWeb项目前,都会要求简单配置一下Tomcat,可是,当项目运行起来,就不允许在修改了。
如果想修改的话,就需要先在Tomcat服务器上右键,从“Add and Removr” Remove所有项目,然后再选择clean,然后再双击,就又能够重新修改了。
然后是里面的一些设置。
其中Server Locations里,一般都选择第二个选项,下面分别是“Tomcat服务器的路径”和“Tomcat项目发布路径”。
Deploy path就是发布路径,这个一定要设置好,一般推荐写到tomcat里的webapps下,其他路径也可以吗,不过一定要好找。
我当时就因为这个,耽误了学习。当时是学习图片上传的操作,因为当时还不懂这个发布路径,上传图片后,回到原来的项目目录里面找,怎么也找不到上传的图片,后来才意识到,是发布路径设置的不好(Deploy path设置的是默认的wtpwebapps),所以看不到实际的效果。
发布路径相当于项目成品后的输出路径,后期的浏览都是看到的是发布路径里的项目,不是原项目目录。所以这点要注意。
今天开始,项目的控制层(Controller)要转为使用Servlet来操作了,可是在将原来的JSP中的代码拷贝过来后,发现session没法用了,便想办法解决。
在查了好久后,终于找到一个既简单又好用的解决方案就是将
session.setAttribute(name, value);
改为
request.getSession().setAttribute(name,value);
就可以了,超级简单好用。
或者说,为了不一一更改,可以直接创建一个session的对象,对象名和“session”一样就可以了
HttpSession session=request.getSession()
JDBC,Java Database Connectivity,即Java与数据库的连接
1.下载MySQL的JDBC驱动包:https://dev.mysql.com/downloads/connector/j/
下载地址:
2.下载后,进行解压缩,
MySQL是知名的关系型数据库管理系统,最初由瑞典MySQL AB 公司推出,后被SUN公司收购(开发Java的那家公司),后又被Oracle公司收购(收购SUN),现为Oracle公司所有。
MySQL是一个开源的数据库软件(但商用是需要付费的),非常受全球开发者欢迎,很多公司都适用MySQL进行开发。
MySQL因为被Oracle收购,社区曾因为担心Oracle会闭源,所以又开发出了MySQL一个分支MariaDB来规避风险,MariaDB目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
不过这里,我们还是先学MySQL,毕竟知名度更广。
我从网上查了很多资料也没搞明白为什么现在依然要学MySQL 5.7而不是8版本,所以此次教程依然以5.7版本安装为指南。
1.下载
MySQL的官网是www.mysql.com。先打开这个网站。
然后点击导航栏的DEVELOPER ZONE,
随着Java学习的不断前进,学完了基础部分的JavaSE,就该继续向后学习了。
在学习数据库前,需要先简单学习一些前端开发的相关知识。尽管一线互联网公司早已前后端分离,但小公司还是多前后均栈,而且也为了和前端同学的对接,所以还是要学一部分前端知识才可以。
对于前端开发,开发前,为了提高效率,还是需要选择一个好的IDE来辅助开发,大型工程不可能直接在记事本写的。
在这里我推荐的是Sublime Text3这款软件,简单装上各种插件后还又变得高效起来,所以非常值得一试。
第一步,是要从下载并安装Sublime Text3这款软件。
软件官网是www.sublimetext.com,打开官网以后,选择Download,然后就会看到软件的下载链接。按照自己系统的版本,选择适合自己系统的Subli Text3进行下载。下载后,进行安装。
第二部,安装Package Control。Package Control非常重要,关系到后面很多实用插件的安装,所以都是默认需要安装的。
安装Package Control过程中,有三种方法。如果第一二种安装失败,可以尝试第三种,第三种安装方式是下载安装包安装,比另外两种现下载要快一些,第三种失败的话可以尝试从国内互联网平台找资源,从而提高下载速度进行第三种方法的安装。
打开Package Control的官网,进入他们的安装链接,packagecontrol.io/installation。可以看到,他们的官网上也是提供了上述的三种安装方法,一种是Command Palette(控制台)安装方法,一种是Menu(菜单)安装方法,一种是Manual(手动)安装方法。(前两种可以说是非常考验电脑的网速了,第三种的话可以直观看到下载速度,所以感觉比前两种会快一点)
第一种就是复制代码到控制台中。
按照提供的快捷键,打开Command Palette,然后输入Install Package Control命令,然后按回车键就可以了。
第二种就是菜单安装。
按照提供的安装路径,先打开Tools(工具)菜单,然后选择Install Package Control选项,就可以了。
第三种就是手动安装。
先点击其中的第三步中的Package Control.sublime-package,把这个包下载下来,注意下载下来要确认一下包名是否正确,一定要同“Package Control.sublime-package”这个名称相同。
然后,选择Preferences(偏好设置或首选项,大体这个意思),Mac要点击左上角Apple Logo右边的Sublime Text3会出现Preferences,Win应该也在上栏的菜单中,找一下就好。再点击 Browse Packages选项,会进入一个文件夹。
这个时候,选择其中的Installed Packages文件夹,进入,然后将下载好的Package Control.sublime-package这个文件拷贝进去,就可以了。注意,Mac进入后会发现没有Installed Packages文件夹,只有User文件夹,需要回跳到这个文件夹的上一级才可以,但是Mac端又关闭了User下的Library(资源库)文件夹,所以需要打开。我想了一个简单的方法,就是,在User文件夹上右键选择显示简介,然后复制简介里的路径,然后在上栏,点击“前往”,然后点击“前往文件夹”,这是把刚刚的地址粘贴进去,然后删掉“/Packages”这一段,就能进入这个文件假的上一级了,然后就可以看到有Installed Packages文件夹,双击进入,拷贝Package Control.sublime-package进去就可以了。Win端没有,所以如果要是也找不到Installed Packages文件夹的话,也可以通过前往这个文件夹上一级目录这样来找一找Installed Packages文件夹。
拷贝完以后,退出Sublime Text3,然后再重新打开就行了。
通过以上步骤,安装好Package Control后。建议先退出Sublime Text3,然后重新打开一遍。
如何检验有没有安装Package Control?
还是找到Preference菜单中(Mac点击Apple Logo右边的Sublime Text3中会出现),然后会看到Pakcage Settings和Package Control,就证明成功了。如果不成功,可以再仔细看一下步骤,有没有漏掉什么。
第三步,就是安装插件了。Sublime Text3轻巧之处,就在于让你自己选择需要的插件来安装,你需要什么就装什么,不需要什么,就不用装。
这里,对于前端开发初期,最推荐的就是安装Emmet插件了,他可以帮我们,一键生成一些代码,非常实用,和省时间。
安装插件,就没有那么困难了,不过需要你的网络状况好一些,因为插件都是在境外服务器上,所以有时安装不好,可能会需要用到加速器来辅助下载。
在Sublime Text3界面中,Win按住Shift+Ctrl+P,Mac按住Shift+Command+P,就可以调出安装插件页面,然后,先输入“Package Control: Install Package”,出现这个选项时,选中(方向键上下可以选择),按回车键进入就可以,然后再输入“Emmet”,出现这个选项,选中(方向键上下可以选择),按回车键就可以了,然后Sublime Text3左下角会有一个图标在走动,就证明正在下载安装了。等一会会出现成功的页面,就证明成功了。如果没有安装成功,会提示下载失败,这时可能会需要加速器来加快速度下载安装。
安装好后,可以试一下,新建一个页面,打上“!”然后按TAB键,就会自动生成HTML5的基本结构,打上“html:xt”然后按TAB键,就会自动生成XHTML1.0的基本结构。
当然这次只是安装了一个插件,后期开发需要,肯定还会安装很多实用的插件,可以去网上搜一下,看看常用的插件还有,一并安装下来,方便开发。
忙碌了这么多,一直忘记更新关于Java的文章了。今天来写一下如何写Java的第一个程序吧!
首先,在桌面新建一个文本文档,双击打开。
Mac点开Lauchpad里的else里的TextEdit,然后打开。
在文本中输入,
class Demo { public static void main(String[] args) { System.out.println("Hello,World!"); } }
然后在文件关闭时(两个系统的都是)选择保存,最好保存到一个磁盘的根目录下,这样方便程序的运行(文件的目录好记)
保存后,要修改文件的后缀名为“.java”,有可能你的电脑是无法修改后缀名的,那是因为你需要先打开系统里允许修改后缀名的选项。
然后Windows打开命令提示符,Mac打开Terminal,用命令找到这个文件的目录,
(Windows下 dir命令显示文件目录,cd进入目录,cd..退出目录,磁盘名:进入该磁盘根目录,Mac下ls现实文件目录,其余与Windows相同)
进入这个文件的目录,然后输入“javac 文件名.java”,然后看到没有提示错误,就是编译成功了,此时输入“java Demo”就可以看到“Hello,World!”了。
(输入Demo是因为类名选择了Demo,所以文件在编译后,文件名会变为Demo,其实是可以随便起的,但最好不要中文)