当前位置: 首页 > wzjs >正文

哈铁工程建设公司网站东莞百姓网免费发布信息网

哈铁工程建设公司网站,东莞百姓网免费发布信息网,以就业为导向的高职计算机专业网站设计,服装设计师学校有哪些1. JSTL标签库 JSTL标签库&#xff1a;里面提供了大量的标签。如if标签、for标签等 目的是减少jsp中<%%>的出现 1.1 核心标签库 如何使用jstl标签 引入jstl标签库在网页中引入标签库地址 <%--在网页中引入jstl标签的核心标签库的地址&#xff0c;prefix中的别名可…

1. JSTL标签库

JSTL标签库:里面提供了大量的标签。如if标签、for标签等

目的是减少jsp中<%%>的出现

1.1 核心标签库

在这里插入图片描述

如何使用jstl标签

  1. 引入jstl标签库
  2. 在网页中引入标签库地址
<%--在网页中引入jstl标签的核心标签库的地址,prefix中的别名可以随意定义
引入核心标签库的地址 prefix:前缀 别名  uri:核心标签库的地址--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
  1. 使用相应的标签

可以结合EL表达式一起使用

if标签

<%User user=new User(1,"hzsd","456");request.setAttribute("user",user);
%>
<%--test:条件表达式 没有else--%>
<%--jstl标签库中的==和equals等价的--%>
<c:if test="${user.id==2}">第一个用户
</c:if>

for标签

<%List<User> list=new ArrayList<>();list.add(new User(1,"张一","121"));list.add(new User(2,"张二","122"));list.add(new User(3,"张三","123"));list.add(new User(4,"张四","124"));request.setAttribute("list",list);
%>
<table width="600" border="1px" cellspacing="0" align="center"><tr><th>编号</th><th>姓名</th><th>密码</th></tr><%--循环标签 items表示被循环的数组或集合 var:每次循环拿到的值赋值的变量 begin:从哪开始 end:到哪结束 step:步数--%><c:forEach items="${list}" var="s"><tr><td>${s.id}</td><td>${s.name}</td><td>${s.password}</td></tr></c:forEach>
</table>

choose when other标签

java中switch语句

<c:choose><c:when test="${age>0 and age<10}">小学</c:when><c:when test="${age>=10 and age<18}">高中</c:when><c:when test="${age>=18 and age<25}">大学</c:when><c:otherwise>家里蹲</c:otherwise>
</c:choose>

redirect重定向标签

<c:redirect url="add.jsp"></c:redirect>

1.2 格式化标签库

网页中引入格式化标签

<%--引入核心标签库的地址 prefix:前缀 别名  uri:核心标签库的地址--%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="f" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head><title>Title</title>
</head>
<body><%request.setAttribute("birthday",new Date());%><%--value:要格式的数据  pattern:格式化后的样式--%><f:formatDate value="${birthday}" pattern="yyyy年MM月dd日 HH:mm:ss"></f:formatDate><input type="text" value="<f:formatDate value='${birthday}' pattern='yyyy-MM-dd'/>"/>
</body>
</html>

2. servlet

2.1 what

本质就是java类,做到了承上启下的作用,可以接收请求的数据,也可以把数据相应给前端页面

等价于处理页面,目的是为了减少<%%>的出现

2.2 why

目的是减少jsp中<%%>的使用

在这里插入图片描述

如果没有servlet,需要为每一个前端类型提供一种处理功能,替代处理界面

2.3 how

创建一个类并继承HttpServlet

public class MyServlet extends HttpServlet {//重写父类中的方法.接受参数以及业务处理@Overridepublic void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {System.out.println("代码~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");}
}

在web.xml文件中注册该servlet,后续有简化方法,即在相应的类中添加注解

把servlet类的创建交于tomcat容器创建

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--注册servlet--><servlet><!--servlet的名称可以随便起--><servlet-name>myServlet</servlet-name><!--指定自定义的servlet路径--><servlet-class>com.ykq.servlet.MyServlet</servlet-class></servlet><!--请求路径映射到该servlet--><servlet-mapping><!--保证该名称必须和上面注册的名称一致--><servlet-name>myServlet</servlet-name><!--路径,可以随意定义,但必须加/--><url-pattern>/my</url-pattern></servlet-mapping>
</web-app>

2.4 servlet接收请求的参数值

 @Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//编码设置req.setCharacterEncoding("utf-8");//接受参数String name = req.getParameter("name");String age = req.getParameter("age");System.out.println("name=========="+name+";age=========="+age);//跳转
//        resp.sendRedirect("aaa.html");req.getRequestDispatcher("aaa.html").forward(req,resp);}

2.5 完成登录

在这里插入图片描述

servlet中的代码

public class LoginServlet extends HttpServlet {private UserDao userDao=new UserDao();@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {request.setCharacterEncoding("utf-8");String name = request.getParameter("name");String password = request.getParameter("password");User user = userDao.selectByNameAndPwd(name, password);if(user!=null){//获取session对象HttpSession session = request.getSession();//保存数据到sessionsession.setAttribute("user",user);//跳转成功页面response.sendRedirect("success.jsp");}else{response.sendRedirect("login.jsp");}}
}

2.6 使用注解简化web.xml注册的代码

web版本为3.0以后

在这里插入图片描述

2.7 快速建立servlet【没有不用】

在这里插入图片描述

2.8 一个servlet实现多个请求

正常情况下一个表的操作都放在一个servlet中。处理多个请求

处理方法:发送请求时传递一个标志参数

在这里插入图片描述

@WebServlet(name = "StudentServlet",urlPatterns = "/StudentServlet")
public class StudentServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//接受操作的标志String method = req.getParameter("method");if("add".equals(method)){add(req,resp);}else if("delete".equals(method)){delete(req,resp);}else if("update".equals(method)){update(req,resp);}else{list(req,resp);}}private void list(HttpServletRequest req, HttpServletResponse resp) {}private void update(HttpServletRequest req, HttpServletResponse resp) {System.out.println("~~~~~~~~~~~~~~~~~~~修改学生update~~~~~~~~~~~~~");}//删除学生的操作private void delete(HttpServletRequest req, HttpServletResponse resp) {//接受删除学生的id//调用dao完成删除功能//跳转System.out.println("~~~~~~~~~~~~~~delete删除学生~~~~~~~~~~~~~~~");}//添加学生private void add(HttpServletRequest req, HttpServletResponse resp) {System.out.println("~~~~~~~~~~~~~~add添加学生~~~~~~~~~~~~~~~~~~~~");}
}

2.9 servlet的生命周期

servlet对象从创建到销毁经历哪些阶段。每个阶段执行相应的方法

  1. 创建new[只会执行一次]
  2. 初始化阶段[只会执行一次]
  3. 服务阶段[每次请求都会执行]
  4. 销毁阶段[服务器关闭时]
public class MyServlet extends HttpServlet {//只执行一次。----单例模式[节省内存]public MyServlet(){//创建servlet经历的方法System.out.println("构造servlet方法");}//初始化方法只执行一次@Overridepublic void init(ServletConfig config) throws ServletException {//本servlet局部参数String name = config.getInitParameter("name");String age = config.getInitParameter("age");//获取web全局参数String address = config.getServletContext().getInitParameter("address");System.out.println("初始化阶段"+name+";"+age+";"+address);}//每次请求都会经过service服务阶段@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("服务阶段---");}@Overridepublic void destroy() {System.out.println("销毁阶段");}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--全局参数--><context-param><param-name>address</param-name><param-value>bj</param-value></context-param><servlet><servlet-name>my</servlet-name><servlet-class>com.ykq.servlet.MyServlet</servlet-class><!--初始化的参数--><init-param><param-name>name</param-name><param-value>ldh</param-value></init-param><init-param><param-name>age</param-name><param-value>18</param-value></init-param><!--服务器启动时加载该servlet: 优点:客户访问速度快。 缺点:服务器启动慢了--><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>my</servlet-name><url-pattern>/My</url-pattern></servlet-mapping>
</web-app>

3. 注意点

  1. 退出登录:因为是保存到session会话中的信息,是在Servlet Java代码中实现退出登录,又因为Java中没有session对象,必须先通过req.getSession()方法获取,才能调用session的removeAttribute方法移除session会话中的信息

所有,实现步骤:

  private void loginOut(HttpServletRequest req, HttpServletResponse resp) throws IOException {//获取会话对象HttpSession session = req.getSession();session.removeAttribute("user");resp.sendRedirect("login.jsp");}
  1. 过滤器也可以通过添加注解实现注册该过滤器
http://www.dtcms.com/wzjs/806797.html

相关文章:

  • 网络公司网站赏析网络销售的方法和技巧
  • 农业交易平台网站建设视频网站开发需要什么语言
  • 企业网站展示生产的处方药介绍处罚案件能自己做效果图的网站
  • wordpress微信站一个域名可以做两个网站吗
  • .net core 网站开发注册网店的详细步骤
  • 宝安建网站多少钱计算机网页设计是属于哪一个专业
  • 常用企业客户资料网站wordpress 4.4.1下载
  • 小松建设官方网站互联网公司全名
  • 楚雄建网站分享网站模板
  • 网站建设 设计那种连接线厂家龙岗区黄阁坑社区
  • 东莞建网站哪家强wordpress图片插件放大
  • 哪些网站做的美剧wordpress本地下载
  • 做配资 怎么在网站联系客户揭阳市seo上词外包
  • 襄阳市建设公司网站河北招投标信息服务平台
  • 化妆培训学校网站建设株洲在线网站的目标客户
  • 传奇网站免费空间代运营公司
  • 网站宣传怎样做不违法wordpress 新浪微博图床
  • 注册了域名之后如何建立一个网站机械加工网免费注册
  • 成都高端模板建站营销型网站建设测验题
  • 为什么网站显示建设中wordpress mip改造
  • 哪个网站可以做英语语法题深圳网站制作公司报价
  • 智能网站建设维护佛山营销网站建设服务公司
  • 交流做病理切片的网站中山网站只设计
  • 网站后台验证码不显示网络营销服务概念
  • 东莞营销型网站外包怎么提高seo排名
  • 深一网站建设招聘wordpress土鳖主题
  • 免费设计商标的网站怎样做网站宣传
  • 企业内部的网站系统计算机软件培训机构哪个好
  • 企业备案 网站名称冠辰网站
  • 宁晋网站建设公司电子商务营销策略