E_BOOK书城
文章平均质量分 59
BOOK书城
少年西西
这个作者很懒,什么都没留下…
展开
-
项目阶段八:使用 AJAX 修改把商品添加到购物车
CartServlet 程序: protected void ajaxAddItem(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 获取请求的参数 商品编号 int id = WebUtils.parseInt(req.getParameter("id"), 0); // 调用bookService.queryBook.原创 2021-01-08 14:11:29 · 310 阅读 · 0 评论 -
项目阶段八:使用 AJAX 验证用户名是否可用
UserServlet 程序中 ajaxExistsUsername 方法:protected void ajaxExistsUsername (HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获 取 请 求 的 参 数 username String username = req.getParameter("username"); .原创 2021-01-08 14:09:59 · 141 阅读 · 0 评论 -
项目阶段七:展示异常页面
将所有异常都统一交给 Tomcat,让 Tomcat 展示友好的错误信息页面。TransactionFilter.java:public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { try { chain.doFilter(request,response); Jd原创 2021-01-08 14:08:00 · 168 阅读 · 0 评论 -
项目阶段七:使用 Filter 和 ThreadLocal 组合管理事务
1、使用 ThreadLocal 来确保所有 dao 操作都在同一个 Connection 连接对象中完成原理分析图:JdbcUtils 工具类的修改:public class JdbcUtils { private static DruidDataSource dataSource; private static ThreadLocal<Connection> conns = new ThreadLocal<Connection>(); /*原创 2021-01-08 14:06:10 · 244 阅读 · 0 评论 -
项目阶段七:使用 Filter 过滤器拦截/pages/manager/所有内容,实 现权限检查
1、使用 Filter 过滤器拦截/pages/manager/所有内容,实 现权限检查Filter 代码:public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpServletRequest = (HttpServletRequest) reques原创 2021-01-08 14:03:21 · 276 阅读 · 0 评论 -
项目阶段六:后台管理的订单模块
1、环境准备1.1、编写后台管理查看所有订单模块的 Dao 程序和测试OrderDao 接口 :/** * 查询全部订单 * @return */List<Order> queryOrders();OrderDao 实现 :@Overridepublic List<Order> queryOrders() { String sql = "select order_id orderId,create_time createTime,price,count,原创 2021-01-07 23:31:33 · 1292 阅读 · 0 评论 -
项目阶段六:查看我的订单模块
3.1、编写查看我的订单模块的 Dao 程序和测试OrderDao 接口 : /** * 根据用户编号查询订单信息 * @param id * @return */List<Order> queryOrdersByUserId(Integer id);OrderDao 实现 :@Overridepublic List<Order> queryOrdersByUserId(Integer id) { String sql = "select or原创 2021-01-07 23:24:22 · 2007 阅读 · 0 评论 -
项目阶段六:订单模块的数据库准备与dao、service层
1、订单模块的分析2、订单模块的实现2.1、创建订单模块的数据库表drop table if exists t_order;create table t_order( order_id varchar(50) primary key, create_time datetime, price decimal(11,2), count int, status int, user_id int, foreign key(user_id) refer原创 2021-01-07 23:19:37 · 502 阅读 · 1 评论 -
项目阶段五:购物车
1、购物车模块分析2、购物车模型编写2.1、购物车模型CartItem.java:public class CartItem { private Integer id;//商品编号 private String name;//商品名称 private Integer count;//商品数量 private BigDecimal price;//商品单价 private BigDecimal totalPrice;//商品总价Cart.java:pu原创 2021-01-07 23:13:50 · 416 阅读 · 0 评论 -
项目阶段五:验证码
表单重复提交之-----验证码表单重复提交有三种常见的情况:一:提交完表单。服务器使用请求转来进行页面跳转。这个时候,用户按下功能键 F5,就会发起最后一次的请求。 造成表单重复提交问题。解决方法:使用重定向来进行跳转二:用户正常提交服务器,但是由于网络延迟等原因,迟迟未收到服务器的响应,这个时候,用户以为提交失败, 就会着急,然后多点了几次提交操作,也会造成表单重复提交。三:用户正常提交服务器。服务器也没有延迟,但是提交完成后,用户回退浏览器。重新提交。也会造成表单重复 提交解决方法:动态验原创 2021-01-07 23:06:07 · 201 阅读 · 0 评论 -
项目阶段五:登录登出优化
1、登陆—显示用户名UserServlet 程序中保存用户登录的信息:login():protected void login(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 1、获取请求的参数 String username = req.getParameter("username"); String password = req.get原创 2021-01-07 23:02:17 · 232 阅读 · 1 评论 -
项目阶段四:首页的分页
1、首页 index.jsp 的跳转web下的index.jsp:<%@ page contentType="text/html;charset=UTF-8" language="java" %><%--只负责请求转发--%><jsp:forward page="/client/bookServlet?action=page"></jsp:forward>复制一份原来的index.jsp到web下的pages下添加文件夹client下/**原创 2021-01-07 22:54:17 · 306 阅读 · 0 评论 -
项目阶段四:分页模块
1)分页模块的分析2)分页模型 Page 的抽取(当前页数,总页数,总记录数, 当前页数据,每页记录数Page代码:/** * Page是分页的模型对象 * @param <T> 是具体的模块的javaBean类 */public class Page<T> { public static final Integer PAGE_SIZE = 4; //当前页页码 private Integer pageNo; //总页码 p原创 2021-01-07 22:48:07 · 259 阅读 · 0 评论 -
项目阶段三:图书模块的增删改查
编写图书模块的 Web 层,和页面联调测试5.1、图书列表功能的实现1、图解列表功能流程2、BookServlet 程序中添加 list 方法protected void list(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //1 通过BookService查询全部图书 List<Book> books = bookService.q原创 2021-01-05 22:12:22 · 1292 阅读 · 5 评论 -
项目阶段三:图书模块的数据库准备与dao、Service层
1、编写图书模块的数据库表drop table if exists t_book;create table t_book( `id` int primary key auto_increment, `bookname` varchar (100), `author` varchar (100), `price` decimal (11,2), `sales` int, `stock` int, `img_path` varchar (200));原创 2021-01-05 21:58:49 · 254 阅读 · 0 评论 -
项目阶段二:代码优化(servlet程序和一些工具类)
BaseServlet 的抽取在实际的项目开发中,一个模块,一般只使用一个 Servlet 程序代码优化一:代码优化:合并 LoginServlet 和 RegistServlet 程序为 UserServlet 程序给 login.jsp、regist.jsp 页面添加隐藏域 action,和修改请求地址login.jsp:<form action="userServlet" method="post"> <input type="hidden" name="action"原创 2020-12-29 22:57:14 · 253 阅读 · 0 评论 -
项目阶段二:代码优化(jsp动态页面)
a)页面 jsp 动态化1、在 html 页面顶行添加 page 指令。2、修改文件后缀名为:.jsp3、使用 IDEA 搜索替换.html 为.jsp(快捷键:Ctrl+Shift+R)ctr+shift+del清空谷歌浏览器缓存b)抽取页面中相同的内容i. head 中 css、jquery、base 标签<%@ page contentType="text/html;charset=UTF-8" language="java" %> <% /*原创 2020-12-29 22:51:33 · 783 阅读 · 0 评论 -
项目阶段一:用户注册和登陆
项目阶段一:用户注册和登陆的实现。需求 1:用户注册 需求如下:1)访问注册页面2)填写注册信息,提交给服务器3)服务器应该保存用户4)当用户已经存在----提示用户注册 失败,用户名已存在5)当用户不存在-----注册成功需求 2:用户登陆 需求如下:1)访问登陆页面 、2)填写用户名密码后提交3)服务器判断用户是否存在4)如果登陆失败 —>>>> 返回用户名或者密码错误信息5)如果登录成功 —>>>> 返回登陆成功 信息JavaE原创 2020-12-29 22:44:33 · 2137 阅读 · 1 评论
分享