SpringBoot开发之JavaWeb回顾
一、开发环境安装
首先需要下载并安装一些开发环境,主要有JDK、IDEA、Maven(IDEA自带)、Tomcat以及MySQL8.0(注意需要8.0哦)
二、创建IDEA工程
1.打开IDEA,点击左上角File,点击New,点击Project
2.选择New Project,填写Name,选择放置路径,语言为Java,Build system为Maven,JDK为1.8,最后点击Create创建IDEA工程
三、创建maven模块
1.还是打开IDEA,点击左上角File,点击New,点击Module
2.填写Name,选择放置路径,JDK为1.8,Parent选择,Archetype选择org.apache.maven.archetypes:maven-archetype-webapp,最后点击Create创建
四、添加tomcat
1.首先需要下载好tomcat安装包,小编已经给大家准备好了,大家直接点击链接下载即可
2.下载好tomcat后,点击Edit Configurations
3.点击+号
4.找到Tomcat,选择Local
5.查看tomcat是否导入
6.点击Deployment
7.点击+号
8.点击第一个
9.选择JavaWeb:war包,点击Apply,最后点击OK
五、导入servlet依赖包
1.在pom.xml中手动加入servlet依赖包
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
2.可以点击右边上的Maven,点击圆圈按钮即可刷新导入
六、完成以上步骤后,点击运行
1.出现Hello World!说明配置都成功
七、创建Servlet
注意:如果有些小伙伴没有,那就点击刷新按钮,多点几次就会有了
八、用Servlet输出html语句
// 输出html语句
response.getWriter().println("<h1>Hello World MyServlet!</h1>");
1.点击运行,选择Redeploy(重新发布)即可,不需要重启Tomcat
2.会出现Hello World!,这时我们还没有访问Servlet,依旧是整个工程
3.Servlet访问路径=工程路径(localhost+端口号+包名)+Servlet的value值
4.我们用上面的路径去访问Servlet,结果打印输出写好的html语句,出现Hello World MyServlet!,访问Servlet成功!
以上利用两种方法输出语句,一种为jsp,一种为Servlet
九、网页动态化(每个用户访问到不同数据)
1.标签的值需要从数据库取
2.jsp可以访问数据库取值, jsp可以嵌入java代码,通过JDBC访问数据库
3.单一职责原则:一个类不能太累了,因此我们可以用Servlet转发jsp页面
4. jsp页面负责html网页相关的,Servlet负责请求java逻辑相关的代码
1.Servlet转发jsp页面
// 通过Servlet转发jsp页面
request.getRequestDispatcher("index.jsp").forward(request,response);
2.点击运行,继续访问Servlet,结果出现index.jsp中的html语句,说明可行
十、从数据库中请求用户名的数据库
jsp页面负责html网页相关的,Servlet负责请求java逻辑相关的代码
1.MyServlet
String name="从数据库中取出来的testName";
request.setAttribute("name",name);
2.index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<body>
<h2>Hello World!</h2>
<%--标签的值需要从数据库取--%>
<%--jsp可以访问数据库取值 jsp可以嵌入java代码,通过JDBC访问数据库--%>
<%--单一职责原则:一个类不能太累了--%>
<%= request.getAttribute("name")%>
<h3>网页动态化</h3>
</body>
</html>
3.点击运行,继续访问Servlet,Servlet写的逻辑代码就传到了index.jsp中
十一、Java JDBC连接数据库
了解JDBC连接数据库步骤
1.打开数据库连接
2.SQL语句请求数据库得到数据
3.数据处理封装
4.关闭数据库
**同时我们还要遵循单一职责原则:一个类不能太累了,因此需要把连接数据库的功能单独分离出去,不再用Servlet连接增加负担,那么应该怎么做呢?
1.这时我们需要新建一个包,把所有与数据库操作有关的放到这个包下,这个包通常叫dao**
2.假如我们需要访问用户数据库,我们可以新建一个接口为UserDao
3. 每一个模块需要一个接口+一个实现类
(1)接口
package com.zou.dao;
public interface UserDao {
public String findUser();
}
(2)实现类,在dao包下新建一个包为impl,在impl包下新建java类为UserDaoImpl
package com.zou.dao.impl;
import com.zou.dao.UserDao;
public class UserDaoImpl implements UserDao {
public String findUser() {
// todo 数据库请求获取用户名
String name="从数据库中取出来的testName";
return name;
}
}
4.修改Servlet代码
package com.zou;
import com.zou.dao.UserDao;
import com.zou.dao.impl.UserDaoImpl;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
//http://localhost:8080/JavaWeb_war/MyServlet
@WebServlet(name = "MyServlet", value = "/MyServlet")
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 输出html语句
// response.getWriter().println("<h1>Hello World MyServlet!</h1>");
// 通过Servlet转发jsp页面
// jsp页面负责html网页相关的,Servlet负责请求java逻辑相关的代码
// todo 从数据库中请求用户名的数据库
// Java JDBC连接数据库步骤
// 1.打开数据库连接 2.SQL语句请求数据库得到数据 3.数据处理封装 4.关闭数据库
// 单一职责原则:一个类不能太累了
// 新建一个包,把所有与数据库操作有关的放到这个包下
// 每一个模块需要一个接口+一个实现类
UserDao userdao=new UserDaoImpl();
String name="从数据库中取出来的testName";
request.setAttribute("name",userdao.findUser());
request.getRequestDispatcher("index.jsp").forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
5.点击运行,继续访问Servlet,依旧可以访问到数据
十二、Controller层
1.新建Controller层
2.MyServlet可以放入Controller层
3.因此我们用controller层接收请求,dao层连接数据库,为了更方便,后面我们会用SpringMVC替换MyServlet接收请求,用MyBatis替换JDBC连接数据库
十二、资源下载
下载地址:SpringBoot开发之JavaWeb回顾
整个JavaWeb回顾就到此结束啦!!!