JavaEE开发之servlet+jsp+tomcat

目录

Tomcat

部署项目

常见配置

tomcat常见配置文件

 解决tomcat控制台乱码问题

修改tomcat监听端口 

配置tomcat并发访问信息 

 Tomcat的请求流程

Get和Post的区别

Servlet

创建第一个servlet项目-配置式

配置项目的默认访问页面

前后端页面传值交互 

利用html页面传输值到servlet

请求头、请求行、响应头、响应行 

乱码问题解决

Servlet的生命周期

ServletContext、servletConfig

开发servlet-注解模式

请求转发和重定向

​编辑​编辑会话管理

session

登录案例实现

​编辑​编辑

JSP

​编辑第一个jsp页面 

指令标签 

page

include

Jsp九大内置对象

​编辑 EL表达式 

JSTL 

FMT

过滤器

过滤器链

​编辑 过滤器实现登录控制案例 

​编辑监听器 

​编辑​编辑 监听器使用案例

记录项目请求访问日志

监控实时在线人数 

​编辑Session钝化与活化 

JSP+Servlet实现分页查询


Tomcat

部署项目

通过tomcat部署项目-方式1:

将项目放在tomcat的webapps目录下,启动tomcat即可:

项目访问方式:

例如:http://192.168.187.129:8080/mypro/index.html

通过tomcat部署项目-方式2:

        若需要前端项目没有放在tomcat的webapps目录下,需要在tomcat的路径配置:

        /usr/local/tomcat/apache-tomcat-10.0.27/conf/Catalina/localhost下进行配置,

        增加 项目名称.xml文件,在新增的项目中配置项目指向:

        <Context path="/项目名称" docBase="项目存放的实际目录"/>

常见配置

tomcat常见配置文件

 解决tomcat控制台乱码问题

修改tomcat监听端口 

配置tomcat并发访问信息 

以上需要在server.xml中的connector标签里面配置:

 Tomcat的请求流程

Get和Post的区别

Servlet

概念:

创建第一个servlet项目-配置式

1. 创建web项目。

2. 创建class类,继承HttpServlet。

3. 配置web.xml。

4. 访问地址:http://localhost:8080/项目名称/web.xml中url-pattern的值

配置项目的默认访问页面

在tomcat的conf文件夹下的web.xml中有欢迎页的默认配置:

默认指向项目中的index文件

如果需要指定,则在项目的web.xml中直接指定即可:

前后端页面传值交互 

利用html页面传输值到servlet

Servlet写法:

前端写法:

请求头、请求行、响应头、响应行 

获取请求行信息

获取所有的参数信息:

响应行

响应头、响应体

乱码问题解决

Post请求乱码:

Get请求乱码:

响应乱码:

Servlet的生命周期

ServletContext、servletConfig

 servletContext的使用:

        servletConfig类似于thread中的threadlocalmap,每个servlet都有自己的servletconfig对象,只能从自己的servletconfig对象中取值

开发servlet-注解模式

使用注解webservlet开发servlet,无需在web.xml中进行配置。

请求转发和重定向

Forward

本servlet不处理响应,交给另外的servlet去做。

Redirect

A请求B,B不处理,让A请求C,常用请求页面静态资源

会话管理

Cookie的使用

读取cookie

session

 使用session

登录案例实现

JSP

第一个jsp页面 

渲染表格到jsp页面

Jsp的原理

Jsp->tomcat转译为java代码->将java代码编译为calss文件->执行

指令标签 

page

include

引入其他页面:

Jsp九大内置对象

 EL表达式 

 

JSTL 

c:set 和c:remove 和 c:out

C: IF C:CHOOSE

c:foreach

使用foreach遍历渲染table: 

FMT

用于对日期、double类型的数据等进行处理的场景

使用格式:

过滤器

 

过滤器的使用-配置版

在web.xml中配置过滤器:

过滤器类的代码:

过滤器链

 过滤器的使用-注解版

 过滤器实现登录控制案例 

Filter代码:

 Servlet代码:

监听器 

 监听器使用案例

记录项目请求访问日志

监控实时在线人数 

Session钝化与活化 

Servlet:

Listener:

JSP+Servlet实现分页查询

Jsp页面:

Controller:

Service:

Dao:

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,以下是一个可能的实现思路和代码示例。请注意,这只是一个粗略的示例,您需要根据具体需求进行修改和优化。 1. 框架搭建 首先,您需要搭建JSP+servlet+Mybatis框架,这里提供一个简单的搭建步骤: 1.1 安装Tomcat服务器和MySQL数据库,并启动Tomcat服务器和MySQL数据库。 1.2 在Eclipse等IDE中新建一个Dynamic Web Project项目,选择Tomcat服务器。 1.3 在项目中添加必要的JSPservlet和Mybatis等框架的jar包。 1.4 编写web.xml文件,配置servletservlet-mapping。 2. 管理员注册登录功能 2.1 创建管理员表 首先,您需要创建一个管理员表,用于存储管理员的信息。可以使用以下语句在MySQL数据库中创建一个管理员表: ```sql CREATE TABLE `admin` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `password` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ``` 2.2 注册功能实现 在注册页面中,用户需要输入用户名和密码,然后点击注册按钮。在后台,可以使用servlet接收表单数据,然后使用Mybatis框架将数据插入到数据库中。 ```java public class RegisterServlet extends HttpServlet { private static final long serialVersionUID = 1L; private AdminDao adminDao = new AdminDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("username"); String password = request.getParameter("password"); Admin admin = new Admin(); admin.setUsername(username); admin.setPassword(password); boolean result = adminDao.addAdmin(admin); if(result) { response.sendRedirect("login.jsp"); } else { response.sendRedirect("register.jsp"); } } } ``` 2.3 登录功能实现 在登录页面中,用户需要输入用户名和密码,然后点击登录按钮。在后台,可以使用servlet接收表单数据,然后使用Mybatis框架查询数据库中是否存在对应的管理员信息。 ```java public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; private AdminDao adminDao = new AdminDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("username"); String password = request.getParameter("password"); Admin admin = adminDao.getAdminByUsername(username); if(admin != null && admin.getPassword().equals(password)) { HttpSession session = request.getSession(); session.setAttribute("admin", admin); response.sendRedirect("index.jsp"); } else { response.sendRedirect("login.jsp"); } } } ``` 3. 产品信息增删改查 3.1 创建产品表 首先,您需要创建一个产品表,用于存储产品的信息。可以使用以下语句在MySQL数据库中创建一个产品表: ```sql CREATE TABLE `product` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `price` double NOT NULL, `description` varchar(100) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ``` 3.2 增加产品信息 在增加产品信息页面中,用户需要输入产品名称、价格和描述,然后点击提交按钮。在后台,可以使用servlet接收表单数据,然后使用Mybatis框架将数据插入到数据库中。 ```java public class AddProductServlet extends HttpServlet { private static final long serialVersionUID = 1L; private ProductDao productDao = new ProductDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); double price = Double.parseDouble(request.getParameter("price")); String description = request.getParameter("description"); Product product = new Product(); product.setName(name); product.setPrice(price); product.setDescription(description); boolean result = productDao.addProduct(product); if(result) { response.sendRedirect("productList.jsp"); } else { response.sendRedirect("addProduct.jsp"); } } } ``` 3.3 删除产品信息 在删除产品信息页面中,用户需要选择需要删除的产品,然后点击删除按钮。在后台,可以使用servlet接收表单数据,然后使用Mybatis框架从数据库中删除对应的产品信息。 ```java public class DeleteProductServlet extends HttpServlet { private static final long serialVersionUID = 1L; private ProductDao productDao = new ProductDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int id = Integer.parseInt(request.getParameter("id")); boolean result = productDao.deleteProductById(id); if(result) { response.sendRedirect("productList.jsp"); } else { response.sendRedirect("productList.jsp"); } } } ``` 3.4 修改产品信息 在修改产品信息页面中,用户需要选择需要修改的产品,然后输入修改后的产品信息,最后点击修改按钮。在后台,可以使用servlet接收表单数据,然后使用Mybatis框架更新数据库中对应的产品信息。 ```java public class UpdateProductServlet extends HttpServlet { private static final long serialVersionUID = 1L; private ProductDao productDao = new ProductDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int id = Integer.parseInt(request.getParameter("id")); String name = request.getParameter("name"); double price = Double.parseDouble(request.getParameter("price")); String description = request.getParameter("description"); Product product = new Product(); product.setId(id); product.setName(name); product.setPrice(price); product.setDescription(description); boolean result = productDao.updateProduct(product); if(result) { response.sendRedirect("productList.jsp"); } else { response.sendRedirect("updateProduct.jsp?id=" + id); } } } ``` 3.5 查询产品信息 在查询产品信息页面中,用户可以选择需要查询的产品,然后点击查询按钮。在后台,可以使用Mybatis框架查询数据库中对应的产品信息,并将结果返回到前台页面显示。 ```java public class QueryProductServlet extends HttpServlet { private static final long serialVersionUID = 1L; private ProductDao productDao = new ProductDaoImpl(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); List<Product> productList = productDao.getProductListByName(name); request.setAttribute("productList", productList); request.getRequestDispatcher("productList.jsp").forward(request, response); } } ``` 以上是一个简单的示例,希望对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只为code醉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值