简单搭建的SSH框架实现简单的登陆

由于本人自学的,所以借鉴于以下的博客和错误修改的博客:

http://blog.csdn.net/lylyyg/article/details/46932493

http://blog.csdn.net/zongzhankui/article/details/6099552

http://wenku.baidu.com/link?url=lVKV4WNu1VjzoBksNh1fCOjDhlV3R25UBb90R4jgRjRkd5fRMbKClU9mHIHNwVxBR4UjE_rYRBzP1yt1VTXMJpTj0p29jxD7qo1K04clpHu

作为一个初学javaweb的人,要弄懂SSH框架是不容易的,所以只有从简单的登录开始做起,才能更好的更好的理解SSH框架基本搭建和实现功能的步骤。

准备的工具:

1.Myeclipse 10

2.struts2-spring-plugin-2.1.2.jar包(不添加这个包,strut.xml不能访问到applicationContext.xml里bean注入的类名的id)

3.tomcat 7.X或其他的tomcat版本

4.Mysql 5.5或以上

5.navicat(mysql数据库的可视化工具)

第一步:

先建立数据库:

第二步:

搭建SSH框架的步骤:

1.建立web工程:

2.添加SSH框架(在工程名上右击->选中Myeclipse->add strut2..[其他的类似]):

添加的顺序为:strut2->spring->hibernate

参照百度的即可或上文给出的百度链接;

第三步:

建立登陆的功能实现模块:

1.先用hibernate逆向工程创建持久化类和*.hbm.xml文件。

2.编写IALoginDao接口类和LoginDAoImpl类implement Dao类

IALoginDao.java  代码如下:

package com.loginSSH.dao;

public interface IALoginDao {

	boolean login(String userName,String pwd);

}

LoginDaoImpl.java  代码如下:

package com.loginSSH.dao.daoImpl;

import java.util.List;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.loginSSH.dao.IALoginDao;
import com.loginSSH.model.UserInfo;

public class LoginDaoImpl extends HibernateDaoSupport implements IALoginDao {

	@SuppressWarnings("unchecked")
	public boolean login(String userName, String pwd) {
		System.out.println(userName+"dao"+pwd);
		List<UserInfo> list=this.getHibernateTemplate().find("from UserInfo where userName=? and userPwd=?",userName,pwd);
		boolean flag=false;
		System.out.println("list长度:"+list.size());
		if(list.size()>0){
			flag=true;
		}
		return flag;
	}

}

编写IALoginService接口类和UserServiceImpl类implement UserService接口类:

IALoginService.java 代码如下:

package com.loginSSH.service;

public interface IALoginService {
	boolean login(String userName,String pwd);
}

LoginServiceImpl.java 代码如下:

package com.loginSSH.service.serviceImpl;

import com.loginSSH.dao.IALoginDao;
import com.loginSSH.service.IALoginService;

public class LoginServiceImpl implements IALoginService {
	private IALoginDao loginDao;
	public void setLoginDao(IALoginDao loginDao){
		this.loginDao=loginDao;
	}
	public IALoginDao getLoginDao(){

		return this.loginDao;
	}

	public boolean login(String userName, String pwd) {

		System.out.println(userName+"service"+pwd);
		return loginDao.login(userName, pwd);
	}

}

编写LoginAction:

LoginAction.java 代码如下:

package com.loginSSH.action;

import com.loginSSH.service.IALoginService;
import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {
	private IALoginService loginService;
	private String userName;
	private String pwd;
	public IALoginService getLoginService() {
		return loginService;
	}
	public void setLoginService(IALoginService loginService) {
		this.loginService = loginService;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}

	public String login(){
		System.out.println(getUserName()+"惊喜"+getPwd());
		boolean flag=loginService.login(this.getUserName(),this.getPwd());
		System.out.println(flag);
		if(flag){

			return "Success";
		}else{
			return "input";
		}

	}

}

往applicationContext.xml里添加以下代码:

<!-- 注入dao的session持久化对象 -->
	<bean id="logind" class="com.loginSSH.dao.daoImpl.LoginDaoImpl">
		<property name="sessionFactory" ref="sessionFactory"></property>
	</bean>
	<!--service注入 dao id为下面的 ref class为 service实现类 name="service实现类中声明的 dao" -->
	<bean id="logins" class="com.loginSSH.service.serviceImpl.LoginServiceImpl">
		<property name="loginDao" ref="logind"></property>

	</bean>
	<!-- action注入service -->
	<bean id="logina" class="com.loginSSH.action.LoginAction" scope="prototype">
		<property name="loginService" ref="logins"></property>

	</bean>

并在 web.xml配置spring监听器的实现:

 <!-- Spring配置 -->
  <!-- spring监听器 -->
  <listener>
  	<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  
  </listener>
  <!-- 实现监听器 -->
  <context-param>
  	<param-name>contextConfigListener</param-name>
  	<param-value>/WEB-INF/applicationContext.xml</param-value>
  </context-param>

在strut.xml中配置from逼到提交上来的userName和password:

<package name="default" extends="struts-default" namespace="/">
		<action name="Login" class="logina" method="login">
			<result name="input">/index.jsp</result>
			<result name="Success">/main.jsp</result>
		</action>
	</package>

编写index.jsp页面:

index.jsp 代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP ‘index.jsp‘ starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
</head>

<body>
	<form method="post" action="Login">
		用户名:<input name="userName" type="text" /> 密码:<input name="pwd"
			type="password" /> <input name="Submits" type="submit" value="登录" />
		<input name="ReSet" type="reset" value=" 重置" />
	</form>
</body>
</html>

在webRoot下随便建立一个main.jsp文件:

main.jsp 代码默认即可;

最后一步部署工程到tomcat:

测试登录出现:

表示成功。

注意事项:

1.可能出现在strut.xml中找不到在applicationContext.xml中注入的bean的ID名,添加struts2-spring-plugin-2.1.2.jar到WEB-INF/lib文件夹下即可。

2.可能出现java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I异常,该异常是因为Struts自带的antlr-2.7.2.jar,比Hibernate3.3自带的antlr-2.7.6.jar的版本要低,故要删除前一个低版本的,, struts1.3 和2.1都带有antlr-2.7.2.jar,具体操作如下:在MyEclipse 下,windows-->preferences-->在文本框中搜索struts2-->选择 antlr2.7.2-->remove,如果已经运行过的工程则还要删除tomcat目录lib的antlr-2.7.2.jar。

该文章只作为本博主的个人经历和记录,如有侵权,请联系博主修改或删除。谢谢。

时间: 2024-11-05 16:26:58

简单搭建的SSH框架实现简单的登陆的相关文章

SSH框架的简单搭建登录

一.SSH架构 1.Struts 2 + Spring + Hibernate 2.以Spring作为核心框架,数据持久化使用Hibernate完成,表现层使用Struts 2 3.Spring提供对象管理.面向切面编程等实用功能 4.通过Spring提供的服务简化编码.降低开发难度.提高开发效率 二.需要导入依赖jar SSH整合体验最不好的就是添加jar包,由于三个框架所依赖的jar包非常多,其中有一些jar包可能冲突,我们应该将冲突的jar包,保留高级版本的,删掉低级版本的. 其中stru

简单的搭建一个SSH框架

准备工作:1.新建一个动态web项目(不要xml文件,使用全注解)2.往lib加东西(注意别重复)  Strust2最小包+3个包(14个).Hibernate的包.Spring的包.还有ojdbc6.jar3.resource 资源文件夹 jdbc.properties.log4j.propertiesa.struts.xml 第一步:让Struts2和Spring相结合 1.需要一个全注解的配置类 WebInitialize.java  用来代替web.xml package com.zha

ssh框架及简单实现

Hibernate篇 三层架构: Hibernate框架 统一版本与配置 Jar包--buildpath 配置dtd约束文件 Hibernate.cfg.xml配置内容 其余配置复制 实体类 Get set 有参 无参 实体类 hbm.xml 数据库表  通过hibernate.cfg.xml中配置生成 对象 ---- 关系  完成 Dao调用接口 测试: Hibernate(增删改查)+dao的开发 +session的方法 把常用代码封装成工具类 1创建静态属性 sessioFactoty 2

SSH框架的简单上传功能的实现

1.创建项目. 2.导入开发包. 3.配置web.xml. 配置内容就是配置struct2的内容如下: <?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:schemaL

搭建项目基本框架的简单步骤

1. 新建工程 1.1 删除不必要类目 选择Single ViewApplication,命名为HomeHome删除选中的三项. 1.2 修改info.plist 1.删除info.plist main.storyboard字段,如下图所示 2.添加字段info.plist 中添加以下Bundle display name --- 对应应用名开启http访问,不添加该字段导致不能访问http,只能访问https. 3.添加应用白名单3.1iOS9之后分享等必须添加白名单后才可以打开相关应用.字段

搭建的SSH 框架

公用JDBC 方法,如果要保存数据,不许再service 中写,而且必须带save*  update* 的方法名才受事物控制,ajax 返回json 控制,登录拦截器, 用户体系我没有建立,个人需要不同, git  地址 http://git.oschina.net/osguy/WebDream/tree/master 采用的是Struts2.3*  spring 3.*  hibernate4* 具体的不记得了,一个多星期熬夜写的,希望对大家有帮助,代码托管在OSCHINA git 上面了.

OA项目2:环境搭建之ssh框架整合

首注:本学习教程为传智播客汤阳光讲师所公布的免费OA项目视频的文字版,本人用此来加强巩固自己开发知识,如有网友转载,请注明.谢谢. 今天做Spring+Hibernate+Struts2整合. 一 Struts2与Spring的整合. 1.整合之前Struts2例子: 在src下建立一个包,包名为:cn.clear.oa.test,在包下面建立一个类TestAction.java,内容如下: 1 package cn.clear.oa.test; 2 3 import com.opensymph

ssh框架简单搭建

这里是个人对SSH框架搭建的一点心得,仅供新手,勿喷 首先,搞清楚分层, 视图层 --> 控制层  --> 业务层 --> DAO层--> 持久层 搭建的顺序是从后向前,搭建一点测试一点,免得都最后找错误太过于繁琐 先搭建持久层,这里是hibernate框架接管 1.建立javaBean对象(ElecText.jvav)   属于持久层对象(PO对象)   属性ID.名称.日期.备注2.创建映射文件ElecText.hbm.xml   建立PO对象与数据库表Elec_Text的关联

SSH框架与配置文件的简单搭建

在eclipse中,对ssh框架进行学习以及简单的编写,以下为基本的项目操作与须知歩骤: 1.导包(创建项目后的第一步,将所有相关的资源包导入项目WebContent  / WEB-INF/ lib/ 下),找到可能会采用的资源,比如: Struts-2.3.30.           Spring-4.2.2           Hibernate-5.2.2 (以上为本例所采用的资源) 创建一个新的项目(点击File-->New-->Dynamic Web Project): 1.1.在S