`
yuanyu5237
  • 浏览: 162825 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用springside3.3.4中的miniweb项目

    博客分类:
  • JAVA
阅读更多
springside是江南白衣发起的一个javaee开源项目,旨在叫大家熟悉各种框架的用法,简化开发流程,其涉及的技术有,maven,ant,struts2,struts-convetion,spring,spring-security,hibernate,jetty,h2数据库,mysql,oracle等,内容有

webservice,一般的增删改查和日志,事务,权限,切换数据库功能,发邮件,等多种演示示例,由于springside即将迎来4.0版本,所以我先复习一下3.3.4这个版本,简单部署其中的miniweb项目。

1,下载springside3.3.4:地址:

http://sourceforge.net/projects/springside/files/SpringSide%203.0/3.3.x/

这里有3.3.4的all-in-one版本,就是包含了所有需要的内容的版本。

2,安装springside3.3.4并生成项目:

运行springside需要java5.0以上版本,并且配置好JAVA_HOME,CLASSPATH,PATH环境变量,使用java -version;java;javac测试环境变量是否配置成功;需要安装maven,下载地址:

http://maven.apache.org/download.html

并配置好M3_HOME,在path中添加maven的bin目录,使用mvn -version测试maven是否成功:我的显示信息:

C:\Users\ydp>mvn -version

Apache Maven 3.0.3 (r1075438; 2011-03-01 01:31:09+0800)

Maven home: D:\java development\apache-maven-3.0.3\bin\..

Java version: 1.6.0_07, vendor: Sun Microsystems Inc.

Java home: C:\Program Files\Java\jdk1.6.0_07\jre

Default locale: zh_CN, platform encoding: GBK

OS name: "windows vista", version: "6.1", arch: "x86", family: "windows"

另外,我的path信息:

PATH=C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Win

dows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Pro

gram Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL S

erver\100\DTS\Binn\;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs;

C:\Program Files\Java\jdk1.6.0_07\bin;C:\Program Files\Java\jdk1.6.0_07\jre\bin;

D:\java development\apache-maven-3.0.3\bin;D:\java development\apache-ant-1.8.2\

bin;C:\Program Files\SSH Communications Security\SSH Secure Shell

我们再配置一个ant,下载地址:

http://ant.apache.org/bindownload.cgi

配置好ANT_HOME和path;使用ant -version命令测试:

Apache Ant(TM) version 1.8.2 compiled on December 20 2010

当所有环境配置成功后,进入到springside的解压目录,其目录结构如下:
2011/05/09  09:45    <DIR>          examples
2010/08/14  01:07               347 generate-project.bat
2010/05/15  17:10            11,561 LICENSE.txt
2011/05/09  10:09    <DIR>          logs
2011/05/09  09:45    <DIR>          modules
2010/09/05  00:26               998 pom.xml
2010/09/16  00:12             1,805 quick-start.bat
2011/05/09  09:45    <DIR>          servers
2011/05/09  09:46    <DIR>          tools
双击运行quick-start.bat,运行过程中会打开4个窗口,h2数据库,miniservice,miniweb,showcase;按wiki(详细信息请参见springside wiki:
http://wiki.springside.org.cn/display/SpringSide3/Home)上说的,会依次完成下面一些动作:
启动自带的H2示例数据库。(等同执行tools/h2/start-db.bat)
将tools/maven/central-repository中的jar文件拷贝到本地仓库, 如C:/Document and Setting/用户名/.m2/repository
编译安装所有子项目。(等同执行项目中的bin/install.bat)
为所有子项目生成Eclipse项目文件。(等同执行每个项目中的bin/eclipse.bat)
为三个Examples项目分别执行初始化数据库,并使用Jetty运行。(等同执行每个项目中的bin/db-init.bat 与 jetty.bat)
如果出现以下信息,则表示运行完毕:
Total time: 0 seconds
[INFO] SpringSide3.0 快速启动完毕.
[INFO] 可访问以下演示网址:
[INFO] http://localhost:8083/mini-service
[INFO] http://localhost:8084/mini-web
[INFO] http://localhost:8085/showcase
Press any key to continue . . .
此时,可以打开上面的链接,先睹为快,欣赏springside的功能演示,这个过程中可能会出现很多错误,我不打算一一解决,也不去管它,只要这几个页面可以完整演示springside的功能即可。
生成项目:双击generate-project.bat;运行过程中会让你输入一些信息,如下:

其中groupId指的是你的组织的名称,由于该项目由我私人贡献,纯属示范用,所以我填了 youxia.personal,因此,在第5个问题上,我选择了personal.you作为我项目中的package的名字,这也是符合国际惯例的;artifactId指的是项目的名字,这里为MultiDatasourceExample,名字有点长,从名字就可以看出来我要示范多个数据源的配置。(该段内容引自:
http://tech.ddvip.com/2009-09/1253780601134201_2.html,可以参考其流程)
该步结束,会在springside目录下生成一个文件夹generated-projects,里面包含了miniweb项目。

3,完成了上面两步,我不打算用那些直接导入的办法来运行miniweb,进入到examples目录。
4,我使用的是eclipse-jee-ganymede-win32版本,apache-tomcat-6.0.32-windows-x86版本,如何使用eclipse开发web项目请参照(http://yuanyu5237.iteye.com/admin/blogs/737905),远程连接mysql(安装在ubuntu下,版本5.1.49),下载mysql驱动,地址http://www.mysql.com/downloads/connector/j/5.1.html;版本5.1.26;
>>>>新建一个dynamic web project,取名miniweb;在和src同级目录(即根目录下)建立两个文件夹java和resources,删除src目录;
>>>>将examples下miniweb中examples\mini-web\src\main\java目录下的全部内容,复制到java目录下;
>>>>将examples下miniweb中examples\mini-web\src\main\resources目录下全部内容复制到resources目录下;
>>>>将examples下miniweb中examples\mini-web\src\main\webapp目录下全部内容复制到WebContent目录下;如果有乱码错误,请修改文件的编码为utf-8(右键,属性,编码);
>>>>将examples\mini-web\target\mini-web-3.3.4\WEB-INF\lib目录下全部的jar文件复制到WebContent目录下WEB-INF中的lib目录下,并将所有jar文件添加到该项目的build path;
>>>>将mysql驱动添加大项目中,并build path;
>>>>在mysql数据库中创建数据库miniweb,默认字符集utf8;
create database miniweb default character set utf8;
use miniweb;
>>>>执行examples\mini-web\src\main\resources\sql\mysql目录下的schema.sql文件,登录到mysql,
source /home/name/schema.sql
>>>>修改数据库编码:
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
set character_set_system=utf8;
查看编码:
show variables like 'character_set_%';
注意:如果在后面出现admin登录miniweb后,没有权限查看用户信息,则很可能是字符集的原因,从数据库取出的角色名和权限名是乱码无法与spring security配置文件中的角色名,权限名匹配,导致admin用户失去权限。
>>>>添加测试数据,如下:
insert into acct_authority values(1,"浏览用户");
insert into acct_authority values(2,"修改用户");
insert into acct_authority values(3,"浏览角色");
insert into acct_authority values(4,"修改角色");

insert into acct_role values(1,"管理员");
insert into acct_role values(2,"用户");

insert into acct_role_authority values(1,1);
insert into acct_role_authority values(1,2);
insert into acct_role_authority values(1,3);
insert into acct_role_authority values(1,4);
insert into acct_role_authority values(2,1);
insert into acct_role_authority values(2,3);

insert into acct_user values(1,"admin@springside.org.cn","admin","Admin","admin");
insert into acct_user values(2,"user@springside.org.cn","user","User","user");
insert into acct_user values(3,"jack@springside.org.cn","user2","Jack","user2");
insert into acct_user values(4,"kate@springside.org.cn","user3","Kate","user3");
insert into acct_user values(5,"sawyer@springside.org.cn","user4","Sawyer","user4");
insert into acct_user values(6,"ben@springside.org.cn","user5","Ben","user5");

insert into acct_user_role values(1,1);
insert into acct_user_role values(1,2);
insert into acct_user_role values(2,2);
insert into acct_user_role values(3,2);
insert into acct_user_role values(4,2);
insert into acct_user_role values(5,2);
insert into acct_user_role values(6,2);

>>>>>修改application.properties中的配置,注释掉h2有关连接内容,将mysql的连接内容去掉注释,并修改数据库名为
miniweb,修改用户名,密码,保存。
>>>>>修改web.xml文件中spring配置文件的位置,从:
<param-value>
classpath*:/applicationContext.xml
classpath*:/applicationContext-security.xml
</param-value>
改为:
<param-value>
classpath:applicationContext.xml
classpath:applicationContext-security.xml
</param-value>
>>>>>>注释掉applicationContext-security.xml文件中一下内容:
<!-- 服务器生产环境配置
<value>file:/var/mini-web/application.server.properties</value>
-->
>>>>>>在tomcat中添加项目miniweb,启动该项目。那如果中途出现各种错误,请一定google解决。
  • 大小: 56.3 KB
分享到:
评论
3 楼 liwanfeng 2012-07-06  
说的很详细!刚开始入门,真的非常需要这些东西啊!
2 楼 Rgnrtn 2011-11-26  
按照楼主的做法去配了,但是
<param-value>
classpath*:/applicationContext.xml
classpath*:/applicationContext-security.xml
</param-value>
改为:
<param-value>
classpath:applicationContext.xml
classpath:applicationContext-security.xml
</param-value>
会导致找不到指定文件,不改的话能找到
另外现在会出现:
Exception starting filter springSecurityFilterChain
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' is defined
导包这些都没问题啊
1 楼 yjmyd1119 2011-08-04  
楼主说的很详细啊!!顶!

相关推荐

    SpringSide3.3.4安装部署

    在 SpringSide3.3.4 安装部署的过程中,我们需要生成 mini-web 项目模板。这个模板将作为我们后续开发的基础。我们可以使用 Maven 的 archetype 机制来生成这个模板。首先,我们需要在命令行中执行以下命令: mvn ...

    springside3.3.4 使用方法

    ### springside3.3.4使用方法与SSH整合详解 #### 一、Springside简介 Springside项目是基于Spring框架的一个应用架构示例,它提供了一套完整的开发模式来构建企业级Java Web应用程序。Springside 3.3.4版本作为一...

    springside3.3.4安装文档

    - 使用 Eclipse 或者其他 IDE 打开 Springside 的示例项目,如 `mini-web`,进行开发和测试。 #### 示例项目配置 - 将 `examples/miniweb/examples/mini-web/src/main/java` 目录下的所有 Java 文件复制到 ...

    springside3.3.4 实例

    在本实例中,我们将深入探讨 SpringSide 3.3.4 版本中的关键特性、应用实例以及如何利用它来构建实际项目。 首先,SpringSide 3.3.4 提供了一个清晰的项目结构,包括模块化的源码组织、Maven 的构建系统和详尽的...

    springside-3.3.4

    springside-3.3.4 可导入ECLIOPSE

    springside-3.3.4纯源码

    本篇文章将详细探讨SpringSide 3.3.4版本的源码结构、核心功能以及如何通过Maven和Ant构建工具进行项目启动。 首先,SpringSide 3.3.4 版本的源码设计遵循模块化原则,主要包含以下几个核心模块: 1. **Core**:这...

    springside-3.3.4-src

    标题中的 "springside-3.3.4-src" 表明我们关注的是该项目的源代码版本,版本号为 3.3.4。描述中的 "挺好用的" 提示我们 SpringSide 在实际开发中表现出良好的实用性与易用性。 SpringSide 3.3.4 主要涵盖了以下几...

    SpringSide-3开发Web项目的全过程.doc

    在本文中,我们将详细介绍使用 SpringSide 3.1.4.3 开发 Web 项目的全过程,包括下载和安装 SpringSide、使用 SpringSide 生成项目、启动 Eclipse 和导入项目等步骤。 下载和安装 SpringSide 首先,需要下载 ...

    springside-3.3.4 源码(无JAR)

    在本文中,我们将深入探讨 springside-3.3.4 版本的源码,理解其设计思想,以及如何利用它来提升我们的开发效率。 首先,SpringSide 项目的核心是模块化设计。3.3.4 版本包含了若干个模块,如 Core、Module、Tool ...

    Springside core 3.3.4 jar

    SpringSide Core 3.3.4 Jar文件。同时还包括扩展Jar包。

    SpringSide3开发环境mini-web项目_3

    SpringSide3开发环境mini-web项目_3 一共三个压缩包: http://download.csdn.net/source/1725011 http://download.csdn.net/source/1725015 http://download.csdn.net/source/1725311

    SpringSide3-core-3.3.4

    SpringSide3-core-3.3.4是SpringSide项目的一个重要版本,它是一个基于Java的轻量级开发框架,旨在简化Spring的使用,提高开发效率。这个压缩包包含了两个关键文件:springside3-core-3.3.4.jar和springside3-...

    springside3-core-3.3.4.jar

    springside3-core-3.3.4.jar

    使用SpringSide开发Web项目

    - **IOC零配置**:使用`&lt;context:component-scan base-package="org.springside.examples.miniweb"/&gt;`扫描DAO层所在的包,自动装配组件。 - **事务零配置**:通过`...

    SpringSide3开发环境mini-web项目_2

    SpringSide3开发环境mini-web项目_2 一共三个压缩包: http://download.csdn.net/source/1725011 http://download.csdn.net/source/1725015 http://download.csdn.net/source/1725311

    springside3-core-3.3.4

    springside3-core-3.3.4.jar

    使用SpringSide_3.1.4.3开发Web项目的全过程

    ### 使用SpringSide 3.1.4.3开发Web项目的全过程 #### 一、SpringSide 3.1.4.3简介与下载 SpringSide框架是针对Java Web应用的一个完整解决方案,它集成了Spring框架的核心功能,并在此基础上进行了扩展和优化,...

    springside3-core-3.3.4-sources.jar

    springside3-core-3.3.4-sources.jar

Global site tag (gtag.js) - Google Analytics