Servet一些东西

Servlet 写控制语句
JSP显示页面
 
Servlet 主要是 Contyol控制—控制用Contyol做~~ 用View显示给用户看。用JSP做-
MVC模型视图控制
RequestDispatcher rd = Request.getRequestDispatcher(“”)
Rd.fo
 
对话用request保存 对话 一次 结束
发送响应 返回响应 则结束
 
Session会话 会话关闭socket才会结束
 
 
   <servlet>
      <servlet-name>BookListServlet</servlet-name>
      <servlet-class>
        com.softeem.books.servlet.BookListServlet
      </servlet-class>
   </servlet>
   <servlet-mapping>
      <servlet-name>BookListServlet</servlet-name>
      <url-pattern>/booklist</url-pattern>
   </servlet-mapping>
 
 
   <servlet>
      <servlet-name>Bookservletupdate</servlet-name>
      <servlet-class>
        com.softeem.books.servlet.Bookservletupdate
      </servlet-class>
   </servlet>
   <servlet-mapping>
      <servlet-name>Bookservletupdate</servlet-name>
      <url-pattern>/bookupdate</url-pattern>
   </servlet-mapping>
 
 
XML的配置
 
 
 
JSP    是一个特殊的sevlet
 
JSP 调用–jspservlet方法
 
Servlet调用 doGet()dopost()方法
 
反射机制
通过Class.forName() 变成对象
Class.forName() 返回 object
 
JSP 先解析在编译  然后执行
 

Tomcat JSP 有修改后。则在解析编译在执行否则执行上一次的.class

doGet()
<form>
数据需要提交。有两种选择 doGet() . dopost()
</form>
超连接使用doGet()提交
数据过多使用dopost()提交多次发送数据
 
doPost()
 
Servlet里的方法
doGet()
doPost()
init() 当用户访问的第一次访问时被调用。(以后不调用,只调用一次)
Destyor()当服务器关闭时调用
response.sendRedirect("booklist"); 一次对话。一次请求一次响应。返回null
RequestDispatcher rs = request.getRequestDispatcher("Book.jsp");
rs.forward(request, response); 多次会话
 
 
MVC 核心C
<load-on-startup>1</load-on-startup> //服务器启动则加载init()不然当第用户访问加载init()
初始化参数 
 
<init-param>
<param-name>driverName</param-name>
<param-value>com.softeem.books
</init-param>
       
<servlet>
              
<init-param>
              
<param-name>DriverName</param-name>
       
<param-value>com.softeem.microsoft.sqlserver.SQLServerDriver</param-value>
              
</init-param>
              
<init-param>
              
<param-name>URL</param-name>       <param-value>jdbc:microsoft:sqlserver://locahost:1433;DatebaseName="basicInfo"</param-value>
       
</init-param>
       
<init-param>
       
<param-name>User</param-name>
       
<param-value>sa</param-value>
       
</init-param>
     
</init-param>
 
              
<init-param>
              
<param-name>Password</param-name>
              
<param-value>123</param-value>
              
</init-param>
              
<servlet-name>BookListServlet</servlet-name>
              
<servlet-class>
                     com.softeem.books.servlet.BookListServlet
              
</servlet-class>
              
<load-on-startup>1</load-on-startup> //服务器启动则加载init()不然当第用户访问加载init()
       
</servlet>
           
<init-param>
              
<param-name>Password</param-name>
              
<param-value>123</param-value>
              
</init-param>
              
<servlet-name>BookListServlet</servlet-name>
              
<servlet-class>
                     com.softeem.books.servlet.BookListServlet
              
</servlet-class>
              
<load-on-startup>1</load-on-startup>
       
</servlet>
 
 
Web – inf 里面所有的东西都不能访问。
 
文件下载 
<a href=”文件名.txt” >文件下载</a>
 
String path = this.getServletContext().getRealPath(“/”);获取到这个目录
 
 
文件下载实现
protectedvoid Press(HttpServletRequest request,
       HttpServletResponse response) throws ServletException, IOException {
       String filename = request.getParameter("filename");
       String path = this.getServletContext().getRealPath("/");//获取当前tomcat路劲
       response.setContentType("application/pdf");
       File file = new File(path + "//Web-inf//" + filename); //文件路劲
       InputStream in = new FileInputStream(file);
       response.addHeader("Content-Disposition", "attachment;filename="
              +filename); //给文件名字
       response.setContentLength((int)(file.length())); //给文件长度
       OutputStream out = response.getOutputStream();
      
       byte[] buff = newbyte[1024];
       int len = 0;
       while ((len = in.read(buff)) != -1) {
           out.write(buff, 0, len);
       }
       out.flush();
       in.close();
 
    }
}
 
 
压缩文件的下载
protectedvoid Press(HttpServletRequest request,
           HttpServletResponse response) throws ServletException, IOException {
       // String filename = request.getParameter("filename");
       String path = this.getServletContext().getRealPath("/");// 获取当前tomcat路劲
       response.setContentType("application/zip");
       File file = new File(path + "//Web-inf//" + "SCSJ004-jSP-SERVLET.pdf"); // 文件路劲
       InputStream in = new FileInputStream(file);
       response.addHeader("Content-Disposition", "attachment;filename="
              + "z.zip"); // 给文件名字
//     response.setContentLength((int)(file.length())); //给文件长度
       OutputStream out = response.getOutputStream();
       ZipOutputStream zout = new ZipOutputStream(out);
       zout.putNextEntry(new ZipEntry("SCSJ004-jSP-SERVLET.pdf"));
       byte[] buff = newbyte[1024];
       int len = 0;
       while ((len = in.read(buff)) != -1) {
           zout.write(buff, 0, len);
       }
       zout.flush();
       in.close();
       File file1 = new File(path + "//Web-inf//" + "oracle.txt");
       InputStream in1 = new FileInputStream(file1);
       zout.putNextEntry(new ZipEntry("oracle.txt"));
       byte[] buff1 = newbyte[1024];
       int len1 = 0;
       while ((len1 = in1.read(buff1)) != -1) {
           zout.write(buff1, 0, len1);
       }
       zout.flush();
       in1.close();
       zout.close();
    }
}
 
会话
Session 用来记录 用户信息 
不要过量使用,大量数据放到Session
 
<%@taglib 标签 
“/Web-INF/下放着
<%@taglib uri=“标签所在路劲”
 
 
 
request.setCharacterEncoding("UTF-8");// 解决乱码取出来时候使用 UTF-8解决中日韩问题
 
 
request.getSession().setAttribute("user", dto); //使用session()存取判断用户
UserDTO dto = (UserDTO) request.getSession().getAttribute("user");
       if (dto == null) {
           RequestDispatcher rs1 = request
           .getRequestDispatcher("login.jsp");
           rs1.forward(request, response);
           return;
       }
 
 
request.getRequestDispatcher()是请求转发,前后页面共享一个request
response.sendRedirect()是重新定向 前后页面不是一个request
 
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值