美文网首页
2018-09-30:MVC及数据显示于JSP

2018-09-30:MVC及数据显示于JSP

作者: 神坛下的我 | 来源:发表于2018-09-30 11:05 被阅读0次

MVC

  • 低耦合:组件与组件之间联系不紧密,但有固定的关系,替换部分组件代价小
    ,比较容易。(前提原因是我们需要很多的组件将任务分工)

XX.jsp 视图层 用户(提要求)
--> XXAction 控制器层 门卫(判断要求有没有权利提,有
权利通知)
判断是否登录,判断是否取得数据,根据结果不同让用户到不同的页面去

--> XXService --> XXServiceImp 业务逻辑层 秘书(将信息处理后提交给领导)
if else for运算,将运算结果提交给领导决定如何操作数据库

XXDao --> XXDaoImp 数据访问层 领导(决定是否存取数据库)
hibernate

--> DB

private Session session = HibernateSessionFactory.getSession();
    public List<Serviceman> getServicemanInfo(){
        Query query = session.createQuery("From Serviceman");
        List<Serviceman> servicemans = query.list();
        HibernateSessionFactory.closeSession();
        return servicemans;
    }

项目设计模块(完成:将数据库数据显示在jsp页面)
ServicemanDao.java

package repairsystem.dao.imp;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;

import repairsystem.dao.ServicemanDaoI;
import repairsystem.entity.Serviceman;
import repairsystem.factory.HibernateSessionFactory;

public class ServicemanDao implements ServicemanDaoI{
    private Session session = HibernateSessionFactory.getSession();

    public List<Serviceman> getServicemanInfo() {
        Query query = session.createQuery("From Serviceman");
        List<Serviceman> servicemans = query.list();
        HibernateSessionFactory.closeSession();
        return servicemans;
    }
}

ServicemanDaoI.java

package repairsystem.dao;

import java.util.List;

import repairsystem.entity.Serviceman;

public interface ServicemanDaoI {
    public List<Serviceman> getServicemanInfo();
}

ServicemanService.java

package repairsystem.service.serviceImp;

import java.util.List;

import repairsystem.dao.ServicemanDaoI;
import repairsystem.dao.imp.ServicemanDao;
import repairsystem.entity.Serviceman;
import repairsystem.service.ServicemanServiceI;

public class ServicemanService implements ServicemanServiceI{
    private ServicemanDaoI servicemanDaoI;
    
    
    
    public ServicemanService() {
        super();
        this.servicemanDaoI = new ServicemanDao();
    }

    public ServicemanDaoI getServicemanDaoI() {
        return servicemanDaoI;
    }

    public void setServicemanDaoI(ServicemanDaoI servicemanDaoI) {
        this.servicemanDaoI = servicemanDaoI;
    }
    
    public List<Serviceman> getServicemanInfo(){
        return servicemanDaoI.getServicemanInfo();
    }
}

ServicemanServiceI.java

package repairsystem.service;

import java.util.List;

import repairsystem.entity.Serviceman;

public interface ServicemanServiceI {
    public List<Serviceman> getServicemanInfo();
}

ServicemanAction.java

package repairsystem.action;

import java.util.List;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

import repairsystem.entity.Serviceman;
import repairsystem.service.ServicemanServiceI;
import repairsystem.service.serviceImp.ServicemanService;

public class ServicemanAction extends ActionSupport{
    private Serviceman serviceman;
    private ServicemanServiceI servicemanServiceI;
    public ServicemanAction() {
        super();
        servicemanServiceI = new ServicemanService();
    }
    public Serviceman getServiceman() {
        return serviceman;
    }
    public void setServiceman(Serviceman serviceman) {
        this.serviceman = serviceman;
    }
    public ServicemanServiceI getServicemanServiceI() {
        return servicemanServiceI;
    }
    public void setServicemanServiceI(ServicemanServiceI servicemanServiceI) {
        this.servicemanServiceI = servicemanServiceI;
    }
    
    public String getServicemanInfo() throws Exception{
        //action依次调用service dao后得到结果,再原路返回结果到了action,再将结果转发给页面
        List<Serviceman> servicemans =  servicemanServiceI.getServicemanInfo();
        ServletActionContext.getRequest().setAttribute("servicemans", servicemans);
        return null;
    }
    
}

struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
    <package name="struts2" extends="struts-default" namespace="/">
        <action name="*_*" class="repairsystem.action.{1}" method="{2}">
            <allowed-methods>getManagerInfo,getCustomerInfo,getHaveskillInfo,getServicemanInfo,
                            getServiceprojectInfo,getServiceTypeInfo,getIntentionrecordInfo
            </allowed-methods>
        </action>
    </package>
</struts>

serviceman.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>test</title>
</head>
<body>
    <s:action name="ServicemanAction_getServicemanInfo" executeResult="false" namespace="/"/>
    <table border="1">
        <tr>
            <td>维修者id</td>
            <td>姓名</td>
            <td>电话</td>
            <td>密码</td>
            <td>住址</td>
            <td>状态</td>
        </tr>
        <s:iterator var="serviceman" value="#request.servicemans">
            <tr>
                <td><s:property value="#serviceman.sid" /></td>
                <td><s:property value="#serviceman.snam" /></td>
                <td><s:property value="#serviceman.sphone" /></td>
                <td><s:property value="#serviceman.spassword" /></td>
                <td><s:property value="#serviceman.saddress" /></td>
                <td><s:property value="#serviceman.sstatus" /></td>
            </tr>
        </s:iterator>
    </table>
</body>
</html>

相关文章

  • 2018-09-30:MVC及数据显示于JSP

    MVC 低耦合:组件与组件之间联系不紧密,但有固定的关系,替换部分组件代价小,比较容易。(前提原因是我们需要很多的...

  • EL表达式

    在MVC体系结构中,JSP页面只是用来显示数据,但JSP脚本中的表达式功能不够强大,它不能直接对隐式对象中某对象的...

  • Spring MVC【入门】就这一篇!

    MVC 设计概述 在早期 Java Web 的开发中,统一把显示层、控制层、数据层的操作全部交给 JSP 或者 J...

  • JSP与MVC的异同

    JSP与MVC的异同 JSP 定义: JSP(Java Server Page)是一种动态网页开发技术,部署于网络...

  • 计算机毕业设计之JavaWeb汽车租赁平台 网上汽车租赁系统

    技术 经典MVC设计模式:JSP+Servlet+JDBC数据库:mysql代码注释丰富,功能齐全,MVC三层架构...

  • Spring MVC 01

    MVC:模型(dao,service)视图(jsp) 控制器(Servlet) Model(模型):包含数据和行为...

  • javaweb_3_MVC设计模式

    MVC设计模式 Jsp(处理用户请求) + JavaBean(数据封装和处理) 简单web程序Servle...

  • JSP及MVC 开发模式

    1.jsp概述 JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种...

  • Android 框架 MVC、MVP、MVVM

    MVC MVC 用一种业务逻辑、数据、界面显示分离的方法组织代码,在改进和个性化定制界面及用户交互的同时,不需要重...

  • MVC设计模式

    JSP开发模式JSP开发模式 三层架构&MVC 的关系三层架构&MVC 的关系 使用MVC设计模式完成 学生信息管...

网友评论

      本文标题:2018-09-30:MVC及数据显示于JSP

      本文链接:https://www.haomeiwen.com/subject/cotwoftx.html