后端知识点

  • 解决中文乱码

request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); response.setContentType("text/json;charset=utf-8");

  • 设置后端给前端发送的数据类型

response.setContentType("text/json;charset=utf-8");响应json格式的数据 response.setContentType("text/html;charset=utf-8");响应字符串格式的数据

  • 获取前端传的参数值

String searchname = request.getParameter("searchname");

  • 给前端响应数据

response.getwriter().write("");

  • 了解jdbc操作及使用jdbc工作类,首先要引入java操作mysql数据库的jar包
  • 常用的基本sql语句

select * from 表//查询 insert into 表(字段,..) values(值,..)//添加 delete from 表 where id = 1 //删除 update 表 set 字段=值,... where id = 1 //修改 select * from 表 limit 起始值,数量 //限制查询 select * from 表 where name like"%关键字%"//模糊查询 select * from 表 where 1=1 and name like "%关键字%"//万能公式 多条件综合查询 select * from 表 order by 字段 desclass//排序 desc降序,asc升序 select * from 表 where id in()//范围查询

  • WEB-INF目录有限访问,不能通知前端跳转来访问其中的资源
  • 后端的跳转方式

请求转发

request,getRequestDispatcher("页面地址").forward(request,response);

重定性

response.sendREdirect("页面地址")

  • 过滤器(在servlet处理之前,先拦截请求,起到过滤的作用)

//URI是统一资源定位标志符 URL是以路径的方式来实现资源定位的一种方式 //获取URI String requestURI = ((HttpServletRequest)request).getRequestURI(); System.out.println(requestURI); if(requestURI.contains("login") || requestURI.contains("resource")) { chain.doFilter(request, response);//放行 }else { //获取的登录状态 Object username = ((HttpServletRequest)request).getSession().getAttribute("username"); if(username!=null) {//登录 chain.doFilter(request, response);//放行 }else {//没有登录 //request.getRequestDispatcher("login.html").forward(request, response); ((HttpServletResponse)response).sendRedirect("login.html"); } }

  • 服务端使用session来存取共享数据

request.getSession().getAttribute("名称");//从session中获取数据 request.getSession().setAttribute("名称","值");//往session中存数据 request.getSession().removeAttribute("名称");//从session中删除数据

  • 单表CRUD代码实现
  • 利用java重点if分支语句来实现动态sql语句,从而到达用户综合查询
  • 分页后的后端实现原理:limit(page-1)*pagesize,pagesize,考虑前端传来的数据都是字符串要进行算数运算,要强行转成数字 比如Integer.parseInt("8")把字符串8转成int类型的8
  • 删除分物理删除和逻辑删除,逻辑删除可以使用数据状态标志字段来实现
  • 利用前端传递的参数来合并优化后端Servlet类的数量,同一个功能模块的不同请求可以合并在一个类中
  • 多表查询场景实现原理

select * from A表,B表, ... where条件

select * from A表inner joinB表,on条件

inner join内连接

left join左连接

right join右连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值