SSH框架搭建的全过程(eclipse)

2023-11-16

SSH框架是最常用的框架之一,在搭建SSH框架的时候总有人遇到这样,那样的问题。下面我介绍一下SSH框架搭建的全过程。 
第一步:准备工作。 
  下载好eclipse,Struts2,Spring,Hibernate。 
  1.eclipse:eclipse下载的时候建议下载JavaEE版的eclipse。 
                 当然你也可以下载eclipse-SDK。(下载eclipse-SDK需要下载Web,Tomcat等plugins) 
  2.Struts2:http://struts.apache.org/download 
         1)引入Struts的jar包。下载 struts-*-all.zip 解压后,struts\lib目录下是struts所有的相关jar包。 
         其中有5个是必须的: 

               Commons-logging-1.0.4.jar,Freemarker-2.3.13.jar, 
               Ognl-2.6.11.jar,Struts2-core-2.1.6.jar,Xwork-2.1.2.jar 
         其余jar包并不是struts必须的。还有3个包也要注意导入。不导入运行Tomcat时候可能会出现异常。 
               commons-io-1.3.2.jar,commons-fileupload-1.2.1.jar,javassist-3.7.ga.jar 
         注意:javassist-3.7.ga.jar包是在struts2-blank-2.2.1.war示例工程中的web-inf/lib下的。 


  3.Spring:http://www.springsource.com/download/community 
        还可以在eclipse下安装下载。具体步骤是这样的: 
        1)打开eclipse-help-Software Updates. 


        2) 在打开的对话框中选择上面的第二项(Available Software)。 


        3)点击Add Site按钮,弹出URL对话框。 


        4)在对话框里输入:http://springide.org/updatesite/点击OK。 


        5)选择sping IDE点击安装(Install)。 


  4.Hibernate:http://sourceforge.net/projects/hibernate/files/hibernate3/ 

  5.Jdk的src.zip包导入。(当然不导入也可以。。。) 

第二步: 

  1.创建一个 Web Progect,自己起一个喜欢的名字。 

  2.修改WEB-INF下的web.xml文件,增加struts2的配置。 

Xml代码 
1.<?xml version="1.0" encoding="UTF-8"?>  
2.<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
3.    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
4.    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
5.    id="WebApp_ID" version="2.5">  
6.    <display-name>SSHTest</display-name>  
7.    <!-- struts Framework -->  
8.    <filter>  
9.        <filter-name>struts2</filter-name>  
10.        <filter-class>  
11.          org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
12.        </filter-class>  
13.    </filter>  
14.    <filter-mapping>  
15.        <filter-name>struts2</filter-name>  
16.        <url-pattern>/*</url-pattern>  
17.    </filter-mapping>  
18.    <!-- welcome file -->  
19.    <welcome-file-list>  
20.        <welcome-file>index.jsp</welcome-file>  
21.    </welcome-file-list>  
22.</web-app>  

  3.在WEB-INF/classes目录下添加struts.xml配置文件: 

Xml代码 
1.<?xml version="1.0" encoding="UTF-8"?>  
2.<!DOCTYPE struts PUBLIC     
3.    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"     
4.    "http://struts.apache.org/dtds/struts-2.0.dtd">    
5.<struts>  
6.    <package namespace="/" name="struts2" extends="struts-default">  
7.        <action name="login" method="execute" class="loginAction">  
8.            <result name="success">/WEB-INF/jsp/login.jsp</result>  
9.            <result name="input">/WEB-INF/index.jsp</result>  
10.        </action>  
11.    </package>  
12.</struts>    

  4.配置Spring 

    1)导入spring包。spring-framework-**.zip解压后,将spring-framework-**文件夹的dist目录下的jar包导入工程中。 


    2)配置web.xml文件。 

Xml代码 
1.<!-- Spring Framework -->  
2.<listener>  
3.    <listener-class>  
4.      org.springframework.web.context.ContextLoaderListener  
5.    </listener-class>  
6.</listener>  
7.<context-param>  
8.    <param-name>contextConfigLocation</param-name>  
9.    <param-value>  
10.        classpath:/applicationContext*.xml  
11.    </param-value>  
12.</context-param>  

    3)添加applicationContext.xml文件。 

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.    xmlns:aop="http://www.springframework.org/schema/aop"  
5.    xmlns:tx="http://www.springframework.org/schema/tx"  
6.    xsi:schemaLocation="  
7.    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  
8.    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd  
9.    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">  
10.    <!-- Action -->  
11.    <bean id="loginAction" scope="prototype" class="action.LoginAction"></bean>  
12.</beans>  

    4)整合Spring与Struts。在Struts的lib目录中找到struts2-spring-plugin-*.jar,引入到工程中。 


  5.配置Hibernate 

        1)解压缩hibernate-distribution-*.zip。导入hibernate-distribution-*GA\lib\required目录中的jar包。 

                hibernate3.jar                         核心类库 
                antlr-2.7.6.jar                          代码扫描器,用来翻译HQL语句 
                commons-collections-3.1.jar    Apache Commons包中的一个,包含了一些Apache开发的集合类, 

                                                                功能比java.util.*强大 
                dom4j-1.6.1.jar                        一个Java的XML API,类似于jdom,用来读写XML文件的 
                javassist-3.4.GA.jar                 Javassist 字节码解释器 
                jta-1.1.jar                                标准的JTA API。 
                slf4j-api-1.5.2.jar 
                slf4j-nop-1.5.2.jar 


        2)创建Hibernate配置文件。在WEB-INF/calsses目录下建立链接数据库的配置文件hibernate.cfg.xml。 
            (本人比较懒,公司电脑中只有Access,也懒得下载别的DBMS。所以例子是连接Access的大家将就看吧。 
            *注意:需要导入Access_JDBC30.jar。 
   hibernate.cfg.xml: 

Xml代码 
1.<?xml version="1.0" encoding="UTF-8"?>  
2.<!DOCTYPE hibernate-configuration PUBLIC     
3.          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"     
4.          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
5.<hibernate-configuration>  
6.    <session-factory>  
7.        <property name="connection.driver_class">  
8.            com.hxtt.sql.access.AccessDriver     
9.        </property>  
10.        <property name="connection.url">  
11.            jdbc:access:///D:/workspace/SSHTest/TestDatabase.accdb  
12.        </property>  
13.        <!--  数据库连接设置 -->  
14.        <property name="eclipse.connection.profile">access</property>  
15.        <property name="connection.username"></property>  
16.        <property name="connection.password"></property>  
17.        <property name="dialect">com.hxtt.support.hibernate.HxttAccessDialect</property>  
18.        <!-- show_sql 生成SQL语句 -->  
19.        <property name="show_sql">true</property>  
20.        <!-- SQL dialect 方言 -->  
21.        <property name="hibernate.dialect">  
22.            com.hxtt.support.hibernate.HxttAccessDialect     
23.        </property>  
24.        <!-- 添加实体类的映射文件-->  
25.        <mapping resource="Login.hbm.xml" />  
26.            
27.        <!-- Annotation方式配置  
28.        <mapping class="entity.Login"/>  
29.         -->  
30.    </session-factory>  
31.</hibernate-configuration>  

             注意:单独使用Hibernate需要创建Session工厂类HibernateSessionFactory.java 
                     (如果用Spring整合就不需要了。Spring会在applicationContext.xml中创建。) 
                      Hibernat 对数据库的操作是通过Session来实现的,这里的session不同于页面间传递参数的session, 
                      而是类似于JDBC中的 Connection。Session是Hibernate运作的中心, 
                      对象的生命周期、事务的管理、数据库的存取都与session息息相关。 
                      而Session是由HibernateSessionFactory创建的,是线程安全的, 
                      可以让多个执行线程同时存取HibernateSessionFactory而不会有数据共享的问题, 
                      但不能让多个线程共享一个Session。 

       3)Login.hbm.xml文件 

Xml代码 
1.<?xml version="1.0" encoding="UTF-8"?>  
2.<!DOCTYPE hibernate-mapping PUBLIC  
3.          "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  
4.          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >  
5.<hibernate-mapping package="包名">  
6.    <class name="类名" table="表名">  
7.        <id name="主键在java类中的字段名" column="对应表中字段" type="类型 ">  
8.            <generator class="主键生成策略"/>  
9.        </id>  
10.    </class>  
11.</hibernate-mapping>  
  6.Spring整合Hibernate。Spring对hibernate的Session的创建、提交、关闭的整个生命周期进行管理。 
        1)  配置sessionFactory,让spring来创建Session。在applicationContext.xml中增加如下代码: 

Xml代码 
1.<!-- sessionFactory -->  
2.    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
3.       <property name="configLocation">  
4.           <value>classpath:/hibernate.cfg.xml</value>  
5.       </property>  
6.    </bean>  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SSH框架搭建的全过程(eclipse) 的相关文章

  • Eclipse 快捷方式查找覆盖某个方法的所有子类

    Is there an Eclipse shortcut to see all class overriding the method m Highlight select put cursor on the method name and
  • (更好的方法)使用 Eclipse 和 XText 获取项目中的文件

    我正在编写一个 XText 编辑器 并进行一些语义突出显示 我正在解析的部分语言引用了文件 这些文件应该存在于项目中 我想根据这些文件是否位于正确的位置来突出显示 目前 我有一个非常丑陋的解决方案 但我确信有更好的方法 public voi
  • Eclipse 与 IntelliJ 热部署

    我的应用程序配置 Tomcat 8 Spring Spring MVC Hibernate 在 Eclipse 中 我创建了 Tomcat 服务器 并将我的应用程序添加到资源中 JSP JS CSS 和 JAVA 类热部署的工作原理就是这样
  • 将密钥对添加到现有 EC2 实例

    我被给予AWS控制台访问正在运行 2 个实例的帐户 但我无法关闭 在生产中 但是 我想获得对这些实例的 SSH 访问权限 是否可以创建一个新的密钥对并将其应用到实例 以便我可以通过 SSH 访问 获取现有的pem当前无法选择创建实例所用的密
  • Android 的代码覆盖率[重复]

    这个问题在这里已经有答案了 可能的重复 Android测试代码覆盖率 Eclipse https stackoverflow com questions 3282702 android test code coverage eclipse
  • java.lang.ClassNotFoundException:javax.mail.MessagingException

    我想使用 eclipse 将电子邮件从我的 gmail 帐户发送到另一个邮件帐户 我使用 apache tomcat 7 0 34 作为我的 Web 服务器 并使用端口 8080 作为 apache 服务器 HTTP 1 1 并使用 JRE
  • 蓝牙发送和接收文本数据

    我是 Android 开发新手 我想制作一个使用蓝牙发送和接收文本的应用程序 我得到了有关发送文本的所有内容逻辑工作 但是当我尝试在手机中测试它时 我看不到界面 这是Main Activity Code import android sup
  • 使用 CounterClockwise 和 Eclipse 在 Clojure REPL 中进行评估

    我通常使用 Emacs 但受到启发再次尝试 CCW Eclipse 我有一个 Clojure 测试项目 其源文件 src user clj 包含以下内容 ns user println hi 我有一个 REPL 我从 Window gt S
  • 生成 equals 和 hashcode 时忽略属性

    假设我有一个类 Customer public class Customer private String firstName private String lastName private String doNotAddMeToEqual
  • Java:无法从同一包中的不同类访问静态变量

    这很奇怪 因为我有一个可以访问 Frame dimension getWidth 的 Character 类 及其伙伴 getHeight 但是当我想在 Map 类中使用它时 Eclipse 强调了它并且无法给我反馈 运行该程序最终会出现
  • Java:在 eclipse 中导出到 .jar 文件

    我正在尝试将 Eclipse 中的程序导出到 jar 文件 在我的项目中 我添加了一些图片和 PDF s 当我导出到 jar 文件时 似乎只有main已编译并导出 我的意愿是如果可能的话将所有内容导出到 jar 文件 因为这样我想将其转换为
  • Ansible bitbucket 克隆存储库配置 ssh 错误

    我之前发布过这个问题 但那里的答案不再有效 总之 当使用 Ansible 配置我的 vagrant box 时 在尝试使用 ssh 克隆我的 bitbucket 私有存储库时 我遇到了一个神秘的错误 该错误指出 权限被拒绝 公钥 然而 如果
  • 无法从 Sourcetree 拉取 Git 远程存储库

    我生成了 ssh 密钥并配置了我的 git 和 SourceTree 我可以 git pull 并从 Git bash 执行其他操作 注意 我在 bashrc 中添加了以下内容以使其正常工作 eval ssh agent ssh add 然
  • Android:默认 XML 编辑器不再打开 [不支持的内容类型错误]

    我使用 Eclipse 在 Android 中开发应用程序已经有一段时间了 我最近将Android SDK平台更新到3 0 API 11 现在 我无法通过双击打开 AndroidManifest xml 或 Layout 文件夹中的任何其他
  • Junit maven构建错误(maven-surefire-plugin:2.19.1:测试失败:分叉进程中出现错误)[重复]

    这个问题在这里已经有答案了 我通过引用创建了一个示例 struts 2 项目和 J unit 测试用例link http self learning java tutorial blogspot com au 2015 04 struts2
  • 如何用python脚本控制TP LINK路由器

    我想知道是否有一个工具可以让我连接到路由器并关闭它 然后从 python 脚本重新启动它 我知道如果我写 import os os system ssh l root 192 168 2 1 我可以通过 python 连接到我的路由器 但是
  • Eclipse:切换选项卡最大化/最小化的热键

    通常 当我在 Eclipse 中工作时 我会处于一个视角 例如调试 并在那里做一些事情 然后我想最大化我正在查看的文件 我双击它并对其进行处理 然后再次双击以最小化回到调试视角 是否有一个热键可以从键盘上执行此操作 Ctrl M will
  • 在 Mac 上使用 Eclipse 进行 C++ 调试器

    当我最终设置我的 mac 来使用 eclipse 后 我无法调试 我尝试通过谷歌寻求帮助 但没有一个答案对我有用 所以 我需要有人帮助我在 eclipse 上安装和使用 c c 调试器 我安装了 Xcode 5 0 感谢您的帮助 Roy 您
  • 连接到 OpenShift (Redhat Paas) mysql 实例

    我正在尝试将我的 C 应用程序与 openshift 数据库连接 但我得到了这个例外conn Open Eccezione gt MySql Data MySqlClient MySqlException 0x80004005 Unable
  • 将多模块 Maven 项目导入 Eclipse 时出现问题 (STS 2.5.2)

    我刚刚花了最后一个小时查看 Stackoverflow com 上的线程 尝试将 Maven 项目导入到 Spring ToolSuite 2 5 2 中 Maven 项目有多个模块 当我使用 STS 中的 Import 向导导入项目时 所

随机推荐

  • 联盟链FISCO BCOS可并行合约开发框架(附实操教程)

    FISCO BCOS是完全开源的联盟区块链底层技术平台 由金融区块链合作联盟 深圳 简称金链盟 成立开源工作组通力打造 开源工作组成员包括博彦科技 华为 深证通 神州数码 四方精创 腾讯 微众银行 亦笔科技和越秀金科等金链盟成员机构 代码仓
  • [c++]数组

    文章目录 数组 数组的声明与使用 数组的存储与初始化 数组作为函数的参数 对象数组 程序实例 数组 在C 的程序设计中 为了处理方便 把具有相同类型的若干变量或对象按有序的形式组织起来 这些按序排列的同类数据元素的集合称为数组 组成数组的变
  • web前端设计--二级菜单栏

    代码
  • java获取天气预报数据

    获取天气预报数据 对于做web项目有天气数据的需求 这个服务很合适 WebXml com cn 2400多个城市天气预报Web服务 包含2300个以上中国城市和100个以上国外城市天气预报数据 数据每2 5小时左右自动更新一次 准确可靠 提
  • Dr.COM 宽带认证客户端频繁掉线问题解决方案

    首先声明 查阅了网上好多博客 都是Bullshit 问题触发原因 因为使用了360wifi 据查资料显示 360wifi与Dr COM 宽带认证客户端 是不可以同时使用的 Dr COM 宽带认证客户端会将分享的IP反馈给服务器 受到服务器拒
  • gym 101505 CTU Open Contest 2016 G Orchard Division

    Problem codeforces com gym 101505 attachments vjudge net contest 187874 problem G Meaning 一个 m m 的网格 长 宽下标 0 m 1 里有 n 个点
  • 简述多线程的作用以及什么地方用到多线程

    1 多线程的作用 可以解决负载均衡问题 充分利用CPU的资源 为了提高Cpu的使用 采用多线程的方法去同时完成几件事情而互不干扰 2 大多数的情况下 使用多线程 主要是需要处理大量的IO操作或处理的情况需要花大量的时间等 3 iOS 有三种
  • MySQL 字段约束 null, not null, default, auto_increment

    转载自 http www xiaoxiaozi com 2009 07 09 1111 没有规矩 不成方圆 任何事物都是如此 在 MySQL 中 每个字段定义都包含附加约束或者修饰符 这些可以用来增加对所输入数据的约束 今天我们就来看一下
  • redis中hset和hmset区别

    Redis 中 hset 命令用于设置指定字段的值 它的格式如下 HSET key field value 其中 key 是键名 field 是字段名 value 是字段值 hmset 命令则用于一次设置多个字段的值 它的格式如下 HMSE
  • 人脸识别项目,从0到1的实现过程

    人脸识别项目 从0到1的实现过程 读取图片 灰度转换 尺寸修改 绘制矩形 人脸检测 多个人脸检测 视频检测 人脸录入 数据训练 人脸识别 项目下载地址 读取图片 代码 导入cv模块 import cv2 as cv 读取图片 img cv
  • Java-API简析_java.net.DatagramPacket类(基于 Latest JDK)(浅析源码)

    版权声明 未经博主同意 谢绝转载 请尊重原创 博主保留追究权 https blog csdn net m0 69908381 article details 132567946 出自 进步 于辰的博客 因为我发现目前 我对Java API的
  • 上证50ETF期权在的开户条件

    一 开户渠道 目前商场上的开户渠道一般分为两种 一是在券商 期货公司 正规交易所开户 二是通过第三方分仓平台开通 此类需认真辨别真假盘 避免上当受骗 二 上证50ETF期权在期货公司的开户条件 1 资金要求 个人投资者 申请开户前20个交易
  • 云原生-docker

    docker理念 docker解决的问题 docker解决了开发 部署各个环境的差异 将运行文档 配置环境 运行环境 运行依赖包 操作系统等都打一个镜像中整体交付 由原来的代码即应用转变的现在的镜像即应用 docker是解决了运行环境和配置
  • git status详解

    git status详解 在使用Git进行版本控制时 git status是一个非常有用的命令 用于查看当前代码仓库的状态 它可以告诉你哪些文件已更改 添加或删除 以及是否有未提交的更改等 本篇博客文章将详细解释git status命令的输
  • ROS2踩坑记录

    Vscode 显示 找不到module 以此选择 设置 Python 在setting json中编辑 在 python autoComplete extraPaths 中添加额外的第三方库路径 如 opt ros foxy lib pyt
  • 每日编程一题刷之有序数组的平方(暴力解法+双指针)

    每日编程一题刷之有序数组的平方 暴力解法 双指针 目录侠 文章目录 每日编程一题刷之有序数组的平方 暴力解法 双指针 题目链接以及描述 题解分析 双指针解法 小结 题目链接以及描述 977 有序数组的平方 力扣 LeetCode leetc
  • 快速搭建一个Web AR应用

    AR是增强现实的缩写 可以在真实世界的映像中叠加额外的信息来增强对现实的表达能力 最出名的一个AR应用就是精灵宝可梦了 玩家用手机在现实世界中捕捉宝可梦小精灵 通常AR应用可以根据不同的方式来对现实世界的映像进行处理 然后生成AR信息 例如
  • Findbugs工具的安装和使用

    今天了解到一个FindBugs工具 去百度了一下 这是一个静态分析工具 顾名思义 这个工具就是帮助我们去扫描Bug的 具体的功能就不赘述了 可以去百度 下面直接将安装的过程和使用吧 注 我刚开始的时候也是根据百度上面的提示去下载和安装Fin
  • VMWare删除虚拟机

    VMWare删除虚拟机 方法一 1 选中要删除的虚拟机操作系统 单击右键 选择 管理 选项 2 然后在选择 从磁盘中删除 选项即可删除该虚拟机操作系统 方法二 1 选中要删除的虚拟机操作系统 选择 VMware 软件最上方的 虚拟机 选项
  • SSH框架搭建的全过程(eclipse)

    SSH框架是最常用的框架之一 在搭建SSH框架的时候总有人遇到这样 那样的问题 下面我介绍一下SSH框架搭建的全过程 第一步 准备工作 下载好eclipse Struts2 Spring Hibernate 1 eclipse eclips