见识少的我经过一天多的研究才知道,在MyEclipse中搭好的框架的配置文件和jar包是通用的。接下来——亮剑!

工具:Eclipse+Tomcat+Mysql

一、先在Eclipse中配置好Tomcat服务器,新建Web工程,建立目录包结构。这些不详细说了。

二、添加ssh所需要的jar包(有点多)。

三、修改web.xml文件和添加struts.xml,application.xml配置文件。

  1.web.xml()

 <?xml version="1.0" encoding="UTF-8"?>
<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_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>ssh</display-name> <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <!-- spring启动文件路径 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param> <!-- spring监听器的作用:提供实例 -->
<!-- spring的监听器配置开始 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<!-- spring的监听器配置结束 -->
<!-- END SNIPPET: filter -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping> </web-app>

  2.struts.xml

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd"><!-- 注意版本 -->
<!-- 这里的包名和命名空间可随便起,但要有意义,访问顺序是先找到包名-命名空间名找到动作类 --> <struts>
<package name="user" namespace="/user" extends="struts-default">
<action name="UserAction" class="action.UserAction" >
<result name="success">/index2.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts>

  3.application.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd" default-autowire="byName"> <context:annotation-config />
<!-- spring 扫描路径,注意当前工程只需要扫描dao和service,srpingmvc或者struts2注解才有变化 -->
<context:component-scan base-package="dao,service" /> <bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://127.0.0.1:3306/young">
</property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.show_sql">
true
</prop>
</props>
</property>
<property name="mappingDirectoryLocations">
<list>
<value>classpath:entity/</value>
</list>
</property>
</bean>
<!-- 配置声明式事务管理(采用注解的方式) -->
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 开启注解事务 -->
<tx:annotation-driven transaction-manager="txManager"/>
</beans>

四、编写各个包下的代码,和修改struts.xml以及application.xml文件,一般是改路径就可以。这里的数据库映射文件和实体类是可以生成的,百度搜索“Eclpse中生成ssh框架中的实体类”,要安装一个Hibernate的插件。以及配置数据库连接。

common包下代码:

package common;

import java.util.List;

public interface BaseDao<T> {
public List<T> findAll();
public int insert(T t);
public int update (T t,int id);
public int delete(int id);
public T findById(int id);
}
package common;

import java.util.List;

public interface BaseService <T>{
public List<T> findAll();
public boolean insert(T t);
public boolean update (T t,int id);
public boolean delete(int id);
public T findById(int id);
}

dao包下代码:

package dao;

import common.BaseDao;
import entity.User; public interface UserDao extends BaseDao<User>{ }
package dao.impl;

import java.util.List;

import javax.websocket.Session;

import org.hibernate.Query;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import org.springframework.stereotype.Repository; import dao.UserDao;
import entity.User;
@Repository
public class UserDaoimpl extends HibernateDaoSupport implements UserDao { @Override
public List<User> findAll() {
// TODO Auto-generated method stub
String sql="select * from user";
Query query=getSession().createSQLQuery(sql).addEntity(User.class);
List<User> list=query.list();
return list ;
} @Override
public int insert(User t) {
// TODO Auto-generated method stub
return 0;
} @Override
public int update(User t, int id) {
// TODO Auto-generated method stub
return 0;
} @Override
public int delete(int id) {
// TODO Auto-generated method stub
return 0;
} @Override
public User findById(int id) {
// TODO Auto-generated method stub
return null;
} }

service包下代码

package service;

import common.BaseDao;
import entity.User; public interface UserService extends BaseDao<User>{ }
package service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import dao.UserDao;
import entity.User;
import service.UserService;
@Transactional
@Service
public class UserServiceimpl implements UserService{
@Autowired
private UserDao userdao;
@Override
public List<User> findAll() {
// TODO Auto-generated method stub
return userdao.findAll();
} @Override
public int insert(User t) {
// TODO Auto-generated method stub
return 0;
} @Override
public int update(User t, int id) {
// TODO Auto-generated method stub
return 0;
} @Override
public int delete(int id) {
// TODO Auto-generated method stub
return 0;
} @Override
public User findById(int id) {
// TODO Auto-generated method stub
return null;
} }

entity包代码:

package entity;
// Generated 2018-3-29 10:41:32 by Hibernate Tools 3.4.0.CR1 /**
* User generated by hbm2java
*/
public class User implements java.io.Serializable { private Integer userid;
private String userName;
private String pwd; public User() {
} public User(String userName, String pwd) {
this.userName = userName;
this.pwd = pwd;
} public Integer getUserid() {
return this.userid;
} public void setUserid(Integer userid) {
this.userid = userid;
} public String getUserName() {
return this.userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getPwd() {
return this.pwd;
} public void setPwd(String pwd) {
this.pwd = pwd;
} }
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2018-3-29 10:41:32 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
<class name="entity.User" table="user" catalog="young">
<id name="userid" type="java.lang.Integer">
<column name="userid" />
<generator class="identity" />
</id>
<property name="userName" type="string">
<column name="userName" length="10" />
</property>
<property name="pwd" type="string">
<column name="pwd" length="10" />
</property>
</class>
</hibernate-mapping>

action包代码:

package action;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import com.opensymphony.xwork2.ActionSupport; import entity.User;
import service.UserService;
@Controller
public class UserAction extends ActionSupport{
@Autowired
private UserService userService;//自动注入 public String toLogin(){
List<User>list=userService.findAll();
for (User user : list) {
System.out.println(user.getUserName());
} return "success";
} }

最后运行大功告成,结果图如下:

Eclipse搭建SSH框架(Struts2+Spring+Hibernate)的更多相关文章

  1. Eclipse搭建SSH(Struts2+Spring+Hibernate)框架教程

    | 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言 确实,刚创博客,对于这个陌生的东西还是有些许淡然.这是我的第一篇博文,希望能给你们有帮助,这就是我最大的乐趣! 好了下面进入正题: SS ...

  2. 用MyEclipse搭建SSH框架(Struts2 Spring Hibernate)

    1.new一个web project. 2.右键项目,为项目添加Struts支持. 点击Finish.src目录下多了struts.xml配置文件. 3.使用MyEclipse DataBase Ex ...

  3. 用eclipse搭建SSH(struts+spring+hibernate)框架

    声明: 本文是个人对ssh框架的学习.理解而编辑出来的,可能有不足之处,请大家谅解,但希望能帮助到大家,一起探讨,一起学习! Struts + Spring + Hibernate三者各自的特点都是什 ...

  4. Spring学习8-用MyEclipse搭建SSH框架 Struts Spring Hibernate

    1.new一个web project. 2.右键项目,为项目添加Struts支持. 点击Finish.src目录下多了struts.xml配置文件. 3.使用MyEclipse DataBase Ex ...

  5. Maven环境下搭建SSH框架之Spring整合Hibernate

    © 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Spring:4.3.8.RELEASE Hibernate:5.1.7.Final MySQL:5.7.17 注意:其他版本在某些特性 ...

  6. Java之基于Eclipse搭建SSH框架(下)

    在上篇博客里,我简介了Tomcat滴配置与Struts2滴搭建,假设对这个还不会滴童鞋去看一下我滴上篇博客<Java之基于Eclipse搭建SSH框架(上)>.今天我们接着上篇博客滴内容. ...

  7. SSH三大框架的搭建整合(struts2+spring+hibernate)(转)

    原文地址:http://blog.csdn.net/kyle0349/article/details/51751913  尊重原创,请访问原文地址 SSH说的上是javaweb经典框架,不能说100% ...

  8. 用Eclipse搭建ssh框架

    问:ssh是哪三大框架,以及他们的作用是什么? 答:分别是struts,spring,hibernate. struts的作用是:是web层,其核心是mvc模式,他可以自动获取参数,自动类型转换,自动 ...

  9. SSH项目整合教学Eclipse搭建SSH(Struts2+Spring3+Hibernate3)

    这篇博文的目的 尝试搭建一个完整的SSH框架项目. 给以后的自己,也给别人一个参考. 读博文前应该注意: 本文提纲:本文通过一个用户注册的实例讲解SSH的整合.创建Struts项目,整合Hiberna ...

随机推荐

  1. repo

    repo init -b remoteBranchName repo sync repo start localBranchName --all 整体切分支 if error is tagger cl ...

  2. tensorflow 升级到1.9-rc0,生成静态图frozen graph.pb本地测试正常, 在其他版本(eg1.4版本)或者android下运行出错NodeDef mentions attr 'dilations' not in Op<name=Conv2D; signature=input:T, filter:T -> output:T; attr=T:type,allowed=[DT_

    这时节点定义找不到NodeDef attr 'dilations' not in,说明执行版本的NodeDef不在节点定义上,两个不一致,分别是执行inference的代码和生成静态图节点不一致(当然 ...

  3. hibernate的开始

    1.1对象的持久化 对象持久化是指将内存中的对象保存到可永久保存的存储设备中(如磁盘)的一种技术.(hibernate是通过id来管理对象) 1.2怎样实现持久化 1 对象序列化 2 JDBC 3 O ...

  4. Game Engine Architecture 9

    [Game Engine Architecture 9] 1.Formatted Output with OutputDebugString() int VDebugPrintF(const char ...

  5. 自己实现ArrayList

    思路: 一 载体 ArrayList是一个集合容器,必然要有一个保存数据的载体. public class MyArraylist { private final static int INIT_CO ...

  6. vim 常用指令总结

    vim的好处(四大好处) vim具有大量的操作技巧,编辑能力强大且速度比其他工具快的多! (这里举个简单的小例子:将每行的前四个字母复制到每行的末尾; 将文本中的所有word替换为words; 等等很 ...

  7. SQL0803问题 键值重复

    工作中遇到SQL0803问题  使用DB2AS400数据库 报数据库键值重复错误 经同事分析为索引的起始值与当前已有记录的最大索引值不匹配造成的,验证过程如下: 1.SELECT max(被索引字段) ...

  8. pandas用法之二

    1,函数应用 ①map() 将函数作用于一个Series的每一个函数(不能是DataFrame) 类似于Python的高阶函数map() 函数可以是Numpy中的通用函数,也可以是自定义函数 优点:代 ...

  9. java集合类,HashMap,ArrayList

    集合类 Collection LinkedList.ArrayList.HashSet是非线程安全的, Vector是线程安全的; ArrayXxx:底层数据结构是数组,连续存放,所以查询快,增删慢. ...

  10. Tomcat start.bat闪退:JRE_HOME环境变量配置不对

    最近在配置Tomcat上遇到startup.bat启动闪退,在网上找了很多方法,都没解决.后来在网上找到两种问题,更改了两次,解决了.现将我遇到的问题分享,希望对遇到同样问题有帮助. 1.很多初学者对 ...