http://blog.csdn.net/binyao02123202/article/details/18446523

最近看了很多招聘,其中很多我想去的公司都需要一些技能,其中熟练 Java SSH 等为必须技能。

因此,我就希望来探讨下SSH的深浅,当中也希望通过更了解它,以后能在SSH的对话中能有一丝丝见解。

下面,我查阅了大量资料,走了不少错路,最后总结了经验后搭建出来的SSH框架。

希望第一次搭建SSH框架的会从中得到启发。

开发环境:

eclipse-jee-kepler-SR1-win32 4.3.0 http://www.eclipse.org/downloads/

apache-tomcat-7.0.2 http://tomcat.apache.org/download-70.cgi

jdk-7u1-windows-i586 http://www.oracle.com/technetwork/java/javase/downloads/index.html

SSH版本:

hibernate-search-4.4.2.Final-dist http://hibernate.org/search/downloads/

spring-framework-4.0.0 https://github.com/diguage/spring-framework

struts-2.3.16-all http://struts.apache.org/download.cgi#struts2316

MYSQL版本:

mysql-connector-java-5.1.28 http://dev.mysql.com/downloads/connector/j/

也许有第一次使用的朋友们观看,因此顺便也说说环境变量的配置

我的电脑->属性->高级->环境变量->系统变量

添加变量

JDK环境变量配置:

JAVA_HOME=D:\Program Files (x86)\Java\jdk1.7.0_01

classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)

path=%JAVA_HOME%\bin

apache环境变量配置:

CATALINA_HOME=D:\Program Files\apache-tomcat-7.0.50; 
CATALINA_BASE=D:\Program Files\apache-tomcat-7.0.50;

最后将servlet.jar在环境变量classpath后追加 %CATALINA_HOME%\common\lib\servlet.jar;

修改后的classpath如下: 
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;

启动apache 运行lib/startup.bat即可(默认端口8080)

下面开始配置SSH框架:

1.新建一个 web 项目

File->New->Dynamic Web Project

2.配置struts

首先引入jar包

jar包所在目录 struts-*\lib

    其中有5个是必须的:
Commons-logging-*.jar,Freemarker-*.jar,Ognl-*.jar,Struts2-core-*.jar,Xwork-*.jar
其余jar包并不是struts必须的。还有3个包也要注意导入。不导入运行Tomcat时候可能会出现异常。
commons-io-*.jar,commons-fileupload-*.jar,javassist-*.ga.jar

解压 struts-*/apps/struts2-blank.war 到任意地方

复制 WEB-INF/web.xml 到 项目中的目录 WEB-INF

复制 WEB-INF/src/java/struts.xml 到 项目中的目录 src

在此说明一下 apps/struts2-blank.war/WEB-INF/lib 也存在,需要引入的jar包,可以直接引入这些jar包。

3.配置spring

引入jar包

jar包所在目录 spring-framework-*\libs

引入目录下所有RELEASE.jar结束的jar包

然后编辑项目 WEB-INF/web.xml 文件,添加

    <!-- Spring Framework -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/spring-*.xml
</param-value>
</context-param>

这里需要说明一下 classpath 存在于项目 WEB-INF 目录下

在 src 下新建XML文件 spring-applicationContext.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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"> </beans>

4.配置hibernate

导入jar包

jar包所在目录 hibernate-search-*\dist\lib\*

   hibernate-commons-annotations-*.jar,hibernate-core-*.jar,antlr-*.jar,dom4j-*.jar,jta-*.jar,slf4j-*.jar 

然后编辑 src 下XML文件 spring-applicationContext.xml

添加代码

    <!-- sessionFactory -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:/hibernate.cfg.xml</value>
</property>
</bean>

在 src 下新建XML文件 hibernate.cfg.xml

代码如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration>
<session-factory>
<!-- 各属性的配置--> <!-- 为true表示将Hibernate发送给数据库的sql显示出来 -->
<property name="show_sql">true</property> <!-- SQL方言,这边设定的是MySQL -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- 一次读的数据库记录数 -->
<property name="jdbc.fetch_size">16</property> <!-- 设定对数据库进行批量删除 -->
<property name="jdbc.batch_size">30</property> <!--驱动程序-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property> <!-- JDBC URL -->
<property name="connection.url">jdbc:mysql://localhost/uel?characterEncoding=UTF-8</property> <!-- 数据库用户名-->
<property name="connection.username">root</property> <!-- 数据库密码-->
<property name="connection.password"></property> </session-factory>
</hibernate-configuration>

因为 hibernate.cfg.xml 有配置mysql因此需要引入 mysql 的jar包

mysql-connector-java-*.jar

最后说明一点,引入jar包的方式有下面2种方式

1.复制所需包到 WEB-INF/lib 下

2.配置 Window->Preferences->Java->Build Path->User Libraries

新建User Libraries,Add External Jars

右键选中项目 Properties->Java Build Path->Add Libraries->User Library::选中新建的User Libraries,Finish

最后设置运行的时候复制jar包到 WEB-INF/lib 下,不然是运行的时候会报各种找不到包的情况

Properties->Deployment Assembly->Add->Java Build Path Entries::选中引入的User Libraries

由于本文只涉及到环境的配置,因此SSH代码的规范没有一丝的提及,希望有兴趣的朋友可以到网上查找更多的参考资料。

附上本文Project Download http://files.cnblogs.com/Yuinro/UEL_SSH_Framework.rar

Eclipse 配置SSH 详解的更多相关文章

  1. mha配置参数详解

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  2. CentOS7下Firewall防火墙配置用法详解

    官方文档地址: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide ...

  3. Python安装、配置图文详解(转载)

    Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...

  4. 【和我一起学python吧】Python安装、配置图文详解

     Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...

  5. MHA配置参数详解 【转】

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  6. JAVA JDK 环境变量配置 入门详解 - 精简归纳

    JAVA JDK 环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 13 转载请注明出处!️ 目录 JAVA JDK 环境变量配置 入门详解 - 精简归纳 一.为什么j ...

  7. ASP.NET Core的配置(2):配置模型详解

    在上面一章我们以实例演示的方式介绍了几种读取配置的几种方式,其中涉及到三个重要的对象,它们分别是承载结构化配置信息的Configuration,提供原始配置源数据的ConfigurationProvi ...

  8. Cocos2d-x win7 + vs2010 配置图文详解

    Cocos2d-x win7 + vs2010 配置图文详解 下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d ...

  9. Oracle 11g客户端在Linux系统上的配置步骤详解

    Oracle 11g客户端在Linux系统上的配置步骤详解 2011-07-26 10:47 newhappy2008 CSDN博客 字号:T | T 本文我们主要介绍了Oracle 11g客户端在L ...

随机推荐

  1. LightOJ 1370 Bi-shoe and Phi-shoe 欧拉函数+线段树

    分析:对于每个数,找到欧拉函数值大于它的,且标号最小的,预处理欧拉函数,然后按值建线段树就可以了 #include <iostream> #include <stdio.h> ...

  2. We're Hiring A Software Tester

    测试人员的基本修养: 代码编写,不可或缺 乔布斯说:Design is not just what it looks like and feel like,design is how it works ...

  3. SQL Server中CURD语句的锁流程分析

    我只在数据库选项已开启“行版本控制的已提交读”(READ_COMMITTED_SNAPSHOT为ON)中进行了观察. 因此只适用于这种环境的数据库. 该类数据库支持四种不同事务隔离级别,下面分别观察数 ...

  4. HIbernate学习笔记(一) 了解hibernate并搭建环境建立第一个hello world程序

    Hibernate是一个开放源代码的ORM(对象关系映射)框架,它对JDBC进行了轻量级的封装,Java程序员可以使用面向对象的编程思维来操纵数据库,它通过对象属性和数据库表字段之间的映射关系,将对象 ...

  5. maven,spring,mybatis集成错误

    maven,spring,mybatis集成的时候单元测试junit测试没问题,但mvn jetty:run 就报错误 错误: org.apache.ibatis.binding.BindingExc ...

  6. hdu3681--Prison Break(TSP+二分)

    好难的一道题. 题意:一个机器人要逃出监狱,每走一步消耗一点电量,初始时电量是满的.给一个n*m(n,m<=15)的字符数组代表监狱,F代表起始点,G代表补充满电量,每个G只能补充一次,Y代表开 ...

  7. Linux内存寻址之分页机制

    在上一篇文章Linux内存寻址之分段机制中,我们了解逻辑地址通过分段机制转换为线性地址的过程.下面,我们就来看看更加重要和复杂的分页机制. 分页机制在段机制之后进行,以完成线性—物理地址的转换过程.段 ...

  8. Shell脚本编程总结及速查手册

    Shell是一种编程语言, 它像其它编程语言如: C, Java, Python等一样也有变量/函数/运算符/if语句/循环控制/… 但在开始之前, 我想先理清Shell语言与Shell之间的关系. ...

  9. 15个易遗忘的Java问题

    通常,在面试中,会遇到面试官提一些比较“偏冷”的基础知识,比如基本数据类型所占用的字节数,或者Unicode和UTF-8的区别之类的问题,这时很多应聘者会答错.还有在平常编码的过程中,很多时候会用到除 ...

  10. Learning JavaScript Design Patterns The Observer Pattern

    The Observer Pattern The Observer is a design pattern where an object (known as a subject) maintains ...