• SSH_框架整合2—查询显示


    4. 完成功能. 

    (1)com.atguigu.ssh.actions包下新建EmployeeAction.java 

      
     1 package com.atguigu.ssh.actions;
     2 
     3 import java.util.Map;
     4 
     5 import org.apache.struts2.interceptor.RequestAware;
     6 
     7 import com.atguigu.ssh.service.EmployeeService;
     8 import com.opensymphony.xwork2.ActionSupport;
     9 
    10 public class EmployeeAction extends ActionSupport implements RequestAware{
    11     /**
    12      * 
    13      */
    14     private static final long serialVersionUID = 1L;
    15     
    16     private EmployeeService employeeService;
    17     
    18     public void setEmployeeService(EmployeeService employeeService){
    19         this.employeeService=employeeService;
    20     }
    21     
    22     public String list(){
    23         request.put("employees", employeeService.getAll()); 
    24         return "list";
    25     }
    26 
    27     //放到页面里
    28     private Map<String,Object> request;
    29     @Override
    30     public void setRequest(Map<String, Object> arg0) {
    31         this.request=arg0;
    32     }
    33 
    34 }
    View Code

      com.atguigu.ssh.dao包下新建EmployeeDao.java

      
     1 package com.atguigu.ssh.dao;
     2 
     3 import java.util.List;
     4 
     5 import org.hibernate.Session;
     6 import org.hibernate.SessionFactory;
     7 
     8 import com.atguigu.ssh.entities.Employee;
     9 
    10 public class EmployeeDao {
    11     
    12     private SessionFactory sessionFactory;
    13     
    14     public void setSessionFactory(SessionFactory sessionFactory){
    15         this.sessionFactory=sessionFactory;
    16     }
    17     
    18     public Session getSession(){
    19         return  this.sessionFactory.getCurrentSession();
    20     }
    21     
    22     public List<Employee> getAll(){
    23         String hql="FROM Employee  e LEFT OUTER JOIN FETCH e.department";
    24         return getSession().createQuery(hql).list();
    25     }
    26 }
    View Code

      com.atguigu.ssh.service包下新建EmployeeService.java 

      
     1 package com.atguigu.ssh.service;
     2 
     3 import java.util.List;
     4 
     5 import com.atguigu.ssh.dao.EmployeeDao;
     6 import com.atguigu.ssh.entities.Employee;
     7 
     8 public class EmployeeService {
     9     
    10     private EmployeeDao employeeDao;
    11     public void setEmployeeDao(EmployeeDao employeeDao){
    12         this.employeeDao=employeeDao;
    13     }
    14     
    15     public List<Employee> getAll(){
    16         List<Employee> employees = employeeDao.getAll();
    17         return employees;
    18     }
    19 }
    View Code

    (2)完善applicationContext-beans.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans"
     3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
     5     
     6     <bean id="employeeDao" class="com.atguigu.ssh.dao.EmployeeDao">
     7         <property name="sessionFactory" ref="sessionFactory"></property>
     8     </bean>
     9     
    10     <bean id="employeeService" class="com.atguigu.ssh.service.EmployeeService">
    11         <property name="employeeDao" ref="employeeDao"></property>
    12     </bean>
    13     
    14     <bean id="employeeAction" class="com.atguigu.ssh.actions.EmployeeAction"
    15           scope="prototype">
    16         <property name="employeeService" ref="employeeService"></property>
    17     </bean>
    18 </beans>
    View Code

    (3)完善struts.xml

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <!DOCTYPE struts PUBLIC
     3     "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
     4     "http://struts.apache.org/dtds/struts-2.3.dtd">
     5 
     6 <struts>
     7 
     8     <constant name="struts.enable.DynamicMethodInvocation" value="false" />
     9     <constant name="struts.devMode" value="true" />
    10 
    11     <package name="default" namespace="/" extends="struts-default">
    12         <action name="emp-*" class="employeeAction"
    13                 method="{1}">
    14                 <result name="list">/WEB-INF/views/emp-list.jsp</result>
    15         </action>
    16     </package>
    17 
    18 </struts>
    View Code

    (4)WebContent下新建index.jsp

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <title>Insert title here</title>
     8 </head>
     9 <body>
    10     <a href="emp-list">显示所有员工信息List All Employees</a>
    11 </body>
    12 </html>
    View Code

    (5)WebContent-views-emp-list.jsp

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <%@ taglib prefix="s" uri="/struts-tags" %>   
     4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     5 <html>
     6 <head>
     7 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     8 <title>Insert title here</title>
     9 </head>
    10 <body>
    11     <h3>Employee List Page</h3>
    12     
    13     <s:if test="#request.employees == null ||#request.size()==0">
    14         没有员工信息
    15     </s:if>
    16     <s:else>
    17         <table border="1" cellpadding="10" cellspacing="0">
    18             <tr>
    19                 <td>ID</td>
    20                 <td>LASTNAME</td>
    21                 <td>EMAIL</td>
    22                 <td>BIRTH</td>
    23                 <td>CREATETIME</td>
    24                 <td>DEPT</td>
    25             </tr>
    26             <s:iterator value="#request.employees">
    27                 <tr>
    28                     <td>${id}</td>
    29                     <td>${lastName}</td>
    30                     <td>${email }</td>
    31                     <td>${birth}</td>
    32                     <td>${createTime}</td>
    33                     <td>${department.departmentName}</td>
    34                 </tr>
    35             </s:iterator>
    36         </table>
    37     </s:else>
    38 </body>
    39 </html>
    View Code

    (6)修改下web.xml中的信息,注册Struts2

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
     3     
     4     <!-- 配置spring配置文件.xml的名称和位置路径 -->
     5     <context-param>
     6         <param-name>contextConfigLocation</param-name>
     7         <param-value>classpath:applicationContext*.xml</param-value>
     8     </context-param>
     9     
    10     <!-- Bootstraps the root web application context before servlet initialization -->
    11     <listener>
    12         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    13     </listener>
    14     
    15     <!-- 配置Struts的Filter -->
    16     <filter>
    17         <filter-name>struts2</filter-name>
    18         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    19     </filter>
    20     <filter-mapping>
    21         <filter-name>struts2</filter-name>
    22         <url-pattern>/*</url-pattern>
    23     </filter-mapping>
    24 
    25 </web-app>
    View Code

    SSH_框架整合2;

  • 相关阅读:
    46 Simple Python Exercises-Higher order functions and list comprehensions
    IDEA一些设置
    DDD建模案例----“视频课程”场景
    LA 4727
    uva 1377
    uva 1421
    UVA
    LA 4731
    uva 11404
    uva 11143
  • 原文地址:https://www.cnblogs.com/noaman/p/5883491.html
Copyright © 2020-2023  润新知