jsp学习日记(一)javabean的使用和JavaBean+servlet的mvc
jsp的运行机制比.net的webform的架构方便多了,只要配置了java sdk和tomcat,在jsp内嵌代码就能运行。这个跟以前的asp有点类似。
后来,为了重用逻辑代码部分,外加内嵌页面java代码太多,不好管理,于是出现了jsp+javabean的两层架构。就是把逻辑代码部分提取出来,放在class里面,然后在jsp页面调用class;calss功能有点类似于webform的后台处理代码,但是本质上是完全不同的;webform的后台代码是可以直接控制aspx页面的服务器控件,而JavaBean是传输数据,或兼并处理数据,然后在jsp显示,jsp+JavaBean模式的两层分工很明确。
定义JavaBean:
package javaweb;
public class javabean {
private String username;
private String password;
public void setUsername(String username)
{
this.username=username;
}
public void setPassword(String password)
{
this.password=password;
}
public String getUsername()
{
return username;
}
public String getPassword()
{
return password;
}
}
构建login.jsp和welcom.jsp:
login.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html> <center> <form method=post action="wellcom.jsp"> username<input type=text name=username> <br><br> password<input type=password name=password> <br><br> <input type=submit value="注册"> </form> </center> </html>
welcom.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<html>
<jsp:useBean id="hello" class="javaweb.javabean" scope="session" />
<jsp:setProperty name="hello" property="*" />
<%
//hello.username = "myname";
%>
your username is:<%= hello.getUsername() %>
<br><br>
your password is:<jsp:getProperty name="hello" property="password"/>
<br><br>
</html>
jsp + javaBean + servlet (俗称的mvc结构)
之前的JavaBean就是分两层,现在加个servlet就分三层。servlet有点像asp.net mvc框架的路由功能,也就是页面控制台,负责控制页面传值和传输。上面的代码不变,加多一个servlet:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.huanlin.UserInfoBean;
public class HelloServlet2 extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=GBK");
request.setCharacterEncoding("GBK");
//创建JavaBean的对象
javabean bean = new javabean();
bean.setUserName( request.getParameter("username").toStrng());
HttpSession session = request.getSession();
session.setAttribute("userInfo", userInfo);
// 前往指定的网页
response.sendRedirect("welcom.jsp")
}
}
当然还要设置WEB-INF下面的web.xml设置路由了:
<servlet>
<servlet-name>
login
</servlet-name>
<servlet-class>
javaweb.javabean
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login.do</url-pattern>
</servlet-mapping>
然后修改login.jsp 标签form的action=”/login.do”
这样一个简单的mvc就实现了

浙公网安备 33010602011771号