生活随笔
收集整理的这篇文章主要介绍了
servlet与jsp的联系与区别
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
jsp servlet的区别和联系
简单的说,SUN首先发展出SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方式,是一句一句输出,所以,编写和修改HTML非常不方便。 后来SUN推出了类似于ASP的镶嵌型的JSP,把JSP TAG镶嵌到HTML语句中,这样,就大大简化和方便了网页的设计和修改。新型的网络语言如ASP,PHP,JSP都是镶嵌型的SCRIPT语言。
JSP 在本质上就是SERVLET,但是两者的创建方式不一样.
Servlet完全是JAVA 程序 代码 构成,擅长于流程控制和事务处理,通过Servlet来生成动态网页很不直观.
JSP由HTML代码和JSP标签构成,可以方便地编写动态网页. 因此在实际 应用 中采用Servlet来控制业务流程,而采用JSP来生成动态网页.
在struts框架中,JSP位于MVC 设计 模式的视图层,而Servlet位于控制层.
JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。
JSP编译后是“类servlet”。
Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP是Java和HTML组合成一个扩展名为.jsp的文件。
JSP侧重于视图,Servlet主要用于控制逻辑。
看一个简单的jsp+servlet的例子,消化消化:转载自:http://hi.baidu.com/wy521ly/blog/item/0523092af322b19d033bf648.html
简单jsp+servlet实例 2008-09-02 20:24
开发环境myeclipse+tomcat5
先创建web project,项目名为test,
在webroot 目录下创建login.jsp文件
login.jsp
<body> <form action="login"> username:<input type="text" name="username"><br> password:<input type="password" name="pwd"><br> <input type="submit"> </form> </body>
在scr目录下的com.ht.servlet
编写AcountBean.java文件
package com.ht.servlet;
public class AcountBean { private String username=""; private String password=""; public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
编写servlet类CheckAccount.java文件
package com.ht.servlet;
import java.io.IOException; import java.io.PrintWriter;
import javax.servlet.ServletException; import javax.servlet.http.*;
public class CheckAccount extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); AcountBean account = new AcountBean(); String username = request.getParameter("username"); String pwd = request.getParameter("pwd"); account.setUsername(username); account.setPassword(pwd); if ((username != null) && (username.trim().equals("jsp"))) { if ((pwd != null) && (pwd.trim().equals("1"))) { System.out.println("session"); session.setAttribute("account", account); String logon_suc = "session.jsp"; response.sendRedirect(logon_suc); return; } } String logon_fail = "fail.jsp"; response.sendRedirect(logon_fail); return; }
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response); }
}
在webroot目录下
编写session.jsp文件 成功后跳转
<body> <% com.ht.servlet.AcountBean account=(com.ht.servlet.AcountBean)session.getAttribute("account"); %> username: <%=account.getUsername() %> <br> password:<%=account.getPassword() %> </body>
编写fail.jsp文件 失败后跳转
<body> Logon Failed <br> </body>
下面是web.xml文件
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <welcome-file-list><welcome-file>login.jsp</welcome-file></welcome-file-list> <servlet> <description>This is the description of my J2EE component</description> <display-name>This is the display name of my J2EE component</display-name> <servlet-name>CheckAccount</servlet-name> <servlet-class>com.ht.servlet.CheckAccount</servlet-class> </servlet>
<servlet-mapping> <servlet-name>CheckAccount</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping> </web-app>
通过myeclipse运行 配置tomcat 这里省略。。。
http://127.0.0.1:8080/tset/ 验证察看结果
转载于:https://www.cnblogs.com/zxw0004/p/5008230.html
《新程序员》:云原生和全面数字化实践 50位技术专家共同创作,文字、视频、音频交互阅读
总结
以上是生活随笔 为你收集整理的servlet与jsp的联系与区别 的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得生活随笔 网站内容还不错,欢迎将生活随笔 推荐给好友。