Java Web初探
一、网页的设计
这部分就是通常所说的“前端部分”。
所涉及的技术主要有html,css,JavaScript。
1.Html:HTML 不是一种编程语言,而是一种标记语言。HTML 使用标记标签来描述网页。
在学习的过程中我觉得表单是一个重要的组件。表单通过<form></form>标签来设置,通过设置其属性action可定义表单提交后所触发的文件(?),设置属性method可定义提交的方式(post or get)。能用于收集信息。
2.CSS:CSS 指层叠样式表 (Cascading Style Sheets),样式定义如何显示 HTML 元素,样式通常存储在样式表中,解决内容与表现分离的问题。
3.JavaScript:是一种轻量级的编程语言,可插入 HTML 页面的编程代码。是互联网上最流行的脚本语言。
三者间的关系如下:
1) HTML 定义了网页的内容
2) CSS 描述了网页的布局
3) JavaScript 网页的行为
这里的话要提一下我在学习过程中所接触到的一个前端框架:bootstrap。
Bootstrap不是什么高深的东西,就是一些几乎所有的 Web 项目中都需要的组件,有了这些组件,就可以在不需要知道太多的 HTML + CSS 知识的情况下构建出精美的网页。
参考链接:
Bootstrap中文网:https://v3.bootcss.com/components
https://blog.csdn.net/u010028869/article/details/43838049
https://blog.csdn.net/GUANYAQI1996/article/details/79588075
二、数据库及其连接(“后端”)
1.数据库:
在本次项目中,所用到的数据库为mysql。
Mysql的安装和使用参考了以下的链接:
https://blog.csdn.net/baidu_21833433/article/details/58139793
https://www.jianshu.com/p/2337d8fd0863
https://blog.csdn.net/fengchen0123456789/article/details/78604987
实际上想要快速下载mysql的话,可以考虑建站集成软件包XAMP(Apache+MySQL+PHP+PERL)
2.数据库连接接口JDBC
是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。(据说这种为多种数据库提供统一接口也是jsp方案相较PHP方案的优势)
JDBC:java database connectivity SUN公司提供的一套操作数据库的标准规范。
JDBC与数据库驱动的关系:接口与实现的关系。
JDBC规范(掌握四个核心对象):
DriverManager:用于注册驱动
Connection: 表示与数据库创建的连接
Statement: 操作数据库sql语句的对象
ResultSet: 结果集或一张虚拟表
使用JDBC之前,需要下载Java连接MySQL的最新驱动包,并通过intellij idea导入。
参考链接:https://blog.csdn.net/kuangdacaikuang/article/details/82940901
如果使用JDBC的过程中出现Error:(11, 72) java: 程序包com.mysql.jdbc不存在 的错误,就是没有正确导入驱动包的原因。
三、servlet和jsp
前面讲完了前端和后端的知识,现在来讲一下“前端”和“后端”如何实现交互。
1.Servlet
概要说明:servlet 是运行在 Web 服务器中的小型 Java 程序(即:服务器端的小应用程序)。servlet 通常通过 HTTP(超文本传输协议)接收和响应来自 Web 客户端的请求。
(可以在servlet类里接受web客户端的信息并存储到数据库里)
(1)Servlet 是使用Java程序语言所编写的一个Java类,通过Web容器(Container)的加载、初始化,受到容器的管理才能成为一个Servlet。
(2)Servlet 是运行在容器之中,容器是由服务器上的JVM所启动的,JVM本身就是服务器上的一个可执行程序。
(3)容器不是HTTP服务器,Web容器是一个用Java所编写的程序,用来加载、管理Servlet。我们所编写的Servlet程序是没有main函数的,所以需要通过容器来启动Servlet程序,找到相应的doGet()方法或doPost()方法,从而进一步处理浏览器的请求。
顺着这个思路,我们引入Tomcat。Tomcat可以用做web容器,同时Tomcat本身附带一个简单的http服务器,因此只要在IDEA配置好Tomcat就同时配置好http服务器和web容器。许多人都以为Tomcat就是Http服务器,或是以为Web容器就是HTTP服务器,其实不然,Tomcat是Web容器,其实可以与其他HTTP服务器相结合,像是Apache。
参考链接:
Web应用程序简介:https://www.cnblogs.com/yangyquin/p/5397049.html
关于如何在IDEA中配置Tomcat:
使用idea编写你的第一个java web程序:
http://baijiahao.baidu.com/s?id=1579410470074074476&wfr=spider&for=pc
2.JSP
概要说明:
1) JSP全名为Java Server Pages,其根本是一个简化的Servlet设计,容器会将JSP网页转译为Servlet并加载到容器中进行管理,所有的JSP最后都以Servlet的实例存在于容器中。
2) 它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
3) JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。
4) 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
现在来展示一下客户端和服务器端的响应流程:
a) Web浏览器发送HTTP请求到服务端,被Controller(Servlet)获取并进行处理(例如参数解析、请求转发)
b) Controller(Servlet)调用核心业务逻辑——Model部分,获得结果
c) Controller(Servlet)将逻辑处理结果交给View(JSP),动态输出HTML内容
d) 动态生成的HTML内容返回到浏览器显示
以上就是,最近java web的一个总结。
最后将展示一下收集到的三个建站方案。
方案一:APACHE+PHP+MYSQL
PHP语法简单,非常易学易用,很利于快速开发各种功能不同的定制网站,PHP因为结构上的缺陷,使的PHP在复杂的大型项目上的开发和维护都比较困难。
方案二:ASP+COM+SQLServer
和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。
方案三:JSP(JavaServer Pages)是Sun公司推出的一种动态网页技术。JSP技术是以Java语言作为脚本语言的。PHP和ASP都是由语言引擎解释执行程序代码,而JSP代码却被编译成Servlet并由Java虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。因此普遍认为JSP的执行效率比PHP和ASP都高。
一些问题及解决方案:
1. 解决IDEA中项目出现cannot resolve method ‘XXXXX(java.lang.String)’问题
https://blog.csdn.net/weixin_39208819/article/details/82320818
2.本项目为小组成员合作完成,用git做版本控制。
参考链接:在IDEA上Git:https://blog.csdn.net/weixin_39274753/article/details/79722522