您的位置:首页 > 运维架构 > Tomcat

java--简单分层概念(tomcat)

2016-09-30 17:34 281 查看
这里相当与前台页面–index.jsp(相当于表现层)

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<html>
<head>

<title>第一个web项目的主页</title>
</head>

<body>
<h2>主页主页</h2>
<h2>湖南长沙</h2>
<h3>发布方式一......</h3>
<h3>分层架构演示</h3>
<form action="layer" method="post">
姓名:<input type="text" name="name"/><br/>
年龄:<input type="text" name="age"/><br/>
<input type="submit" value="保存"/>
</form>
<br/><br/><br/><br/>
<br/><br/><br/><br/>
</body>
</html>


这里相当与前台代码功能–LayerServlet.java(相当于逻辑层)

package cn.hncu.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.hncu.dao.StudDao;
import cn.hncu.dao.StudDaoImpl;
import cn.hncu.domain.Stud;

public class LayerServlet extends HttpServlet {

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
System.out.println("经过后台,可以控制");
//演示后台控制
//收集参数
String name=(String) req.getParameter("name");
String strAge=(String) req.getParameter("age");
//组织参数
Stud st=new Stud();
st.setName(name);//从前端页面获取的数据
st.setId("001");
st.setAge(Integer.parseInt(strAge));
//调用dao层
StudDao dao=new StudDaoImpl();
boolean boo=dao.save(st);

//这种格式是从后台传来的
req.setAttribute("name", "这是保存之后的姓名"+st.getName());

//根据结果导向--转发方式
if(boo){
req.getRequestDispatcher("/jsps/result.jsp").forward(req, resp);
}else{
req.getRequestDispatcher("/jsps/failure.jsp").forward(req, resp);

}

}
}


dao层–调用数据层(这里数据层省略了)

接口:

package cn.hncu.dao;

import cn.hncu.domain.Stud;

public interface StudDao {

public abstract boolean save(Stud st);

}


实现类:

package cn.hncu.dao;

import cn.hncu.domain.Stud;

public class StudDaoImpl implements StudDao {

@Override
public boolean save(Stud st) {
System.out.println(st.toString());
if(st.getAge()<=25){
return true;
}
return false;
}


domain–Stud对象(相当于值对象)

package cn.hncu.domain;

public class Stud {

private String id,name;
private int age;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Stud [id="+id+", name=" +name+", age=" + age"]";

}


根据返回值true所返回的页面–result.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>重定向/转发结果注册页面</title>
</head>
<body>
<h2>重定/转发向结果页面</h2>

<%
String name=(String)request.getAttribute("name");
out.println("Attribute:name="+name);
String nm=(String)request.getParameter("name");
out.println("Parameter:name="+nm);
%>
<br/>
<!-- 网页内的"/"代表helloWeb外面的目录,所以网页文本路径一定要加项目根目录:"/helloWeb/" -->
<!-- 而java代码内的"/"代表项目根目录,所以只要写文本存在目录就好了 -->
<img alt="" src="/helloWeb/images/1.jpg">
</body>
</html>


根据结果false所导向的结果页面–failure.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>重定向/转发结果注册页面</title>
</head>
<body>
<h2>保存失败结果页面...</h2>

<br/>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat web