首页 >web前端 >html教程 >Java+SSH+Bootstrap开发笔记_html/css_WEB-ITnose

Java+SSH+Bootstrap开发笔记_html/css_WEB-ITnose

WBOY
WBOY原创
2016-06-21 08:54:011408浏览

JDK+Tomcat+ MyEclipse开发环境搭建

JDK下载安装

( 1 )下载 JDK 对应版本,双击安装 JDK ,选择安装路径,安装完毕继续安装 JRE ,修改安装路径,安装完毕配置环境变量。计算机 → 属性 → 高级系统设置 → 高级 → 环境变量。

( 2 )系统变量 → 新建 JAVA_HOME 变量 。变量值填写 jdk 的安装目录(到安装目录查看属性复制即可,我的是 D:\Program Files\Java\jdk1.8.0_72) 。

( 3 )系统变量 → 寻找 Path 变量 → 编辑

在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (注意原来 Path 的变量值末尾有没有 ; 号,如果没有,先输入 ; 号再输入上面的代码)

( 4 )系统变量→新建 CLASSPATH 变量

变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一点)

系统变量配置完毕。

( 5 )检验是否配置成功 运行 cmd 输入 java -version ( java 和 -version 之间有空格),若如图所示 显示版本信息 则说明安装和配置成功。

Tomcat下载安装

(1)下载tomcat对应版本,这里下载apache-tomcat-8.0.32-windows-x64.zip免安装版,直接解压到需要的目录即可。

(2)配置CATALINA_HOME环境变量, 计算机 → 属性 → 高级系统设置 → 高级 → 环境变量。系统变量 → 新建 CATALINA_HOME,变量值输入tomcat安装根目录,如我的是D:\Program Files\apache-tomcat-8.0.32。

(3)测试tomcat配置是否成功(依赖之前JDK环境变量配置) 进入tomcat安装目录,进入bin文件夹, 运行 cmd 窗口,拖入 startup.bat 执行命令,此时跳出 tomcat 服务器运行 dos 界面,打开浏览器,输入 http://localhost:8080/ 显示如下便是配置成功。

MyEclipse下载安装并配置

(1)下载myeclipse对应版本(我是myeclipse-pro-2014-GA-offline-installer-windows.exe),选择安装路径安装即可。安装完毕破解教程进行破解。

(2)打开myeclipse,选择window → preferences →Java→Installed JREs→Add→Standard VM→Next→directory 选择 JDK 安装目录,我的是 D:\Program Files\Java\jdk1.8.0_72 ,点击 finish ,选择新添加的 JDK ,点击 OK 退出,

( 3 )选择 window → preferences →MyEclipse→services→tomcat→ 选择 tomcat 版本 ( 我的是 tomcat 8.x) → 点击 Enable→browsetomcathome 目录(我的是 D:\Program Files\apache-tomcat-8.0.32 ),展开 tomcat 8.x→ 选择 JDK→ 选择刚添加的 JDK VM (我的是 jdk1.8.0_72 )

配置成功。

web测试环境

(1)打开myeclipse,File →New→Web Project ,输入工程名 test ,点击 finish 新建一个 web 工程。

(2)右键工程名 →Run As→ MyEclipse server application ,选择 Tomcat 8.x ,点击 OK ,将 web 工程发布到 tomcat 服务器中。

( 3 )打开浏览器,输入 http://localhost:8080/test/ ,显示如下则配置环境成功。

登录实例(SSH框架+bootstrap 3)

数据库准备(选择mysql)

(1)安装数据库环境,下载合适的mysql,这里用mysql-5.6.22-winx64.msi,安装,配置(默认编码选择utf-8,兼容中文)数据库密码即可。

(2)添加连接数据库驱动,下载mysql的java的jdbc驱动程序,我用的是mysql-connector-java-5.1.34-bin.jar,运行MyEclipse打开数据库视图,如图:

对DB Browser右键,新建数据库连接驱动,选择驱动模块为mysql connector/J,输入驱动名字,连接url(注意连接编码集,我的数据库用utf-8编码,工程也是utf-8,设置为jdbc:mysql://localhost:3306/cls_anal?useUnicode=true&characterEncoding=utf-8),mysql登录名和密码,Add JARs添加jdbc库,Driver classname选择com.mysql.jdbc.Driver,选择保存密码,点击Test Driver测试通过即可点击finish完成,如图:

(3)打开mysql驱动连接到数据库中,右键新建一个数据库login,数据库字符编码选择utf-8,展开数据库,新建表userinfo,添加字段userid(主键,自动递增),username,userpass。新建一个sql视图插入一行数据到表中。

切换到工程视图(右上角 选择视图即可)。

MyEclipse配置SSH框架

  1. 新建web project工程,名字为login。

  1. 加入 Struts 支持,右键项目 →MyEclipse→ project facts → 选择安装 struts 1.x ,弹出界面选择下一步,点击 finish 。

  1. 加入Spring支持,右键项目 →MyEclipse→ project facts → 选择安装 Spring ,弹出界面选中下一步,然后将 applicationContext.xml 选择放在 WebRoot/WEB-INF 目录中,点击 finish 。

  1. 加入Hibernate支持,右键项目 →MyEclipse→ project facts → 选择安装 Hibernate ,弹出界面选中下一步,然后将 的勾去掉,下一步,在 DB Driver 选择之前建好的数据库驱动 mysql ,然后点击 finish 。

查看 applicationContext.xml 配置文件,确保数据库驱动配置正确(因为自动生成的一般不正确),如下所示, driverClassName (有些自动生成是不对的), url (记得加上编码集为 utf-8 ,因为我的数据库是 utf-8 的,前台转到后台的 spring 过滤器也是 utf-8 的), username , password 配置正确。

class = “org.apache.commons.dbcp.BasicDataSource” >

value = “com.mysql.jdbc.Driver” >

property >

value = “jdbc:mysql://localhost:3306/cls_anal?useUnicode=true&characterEncoding=utf-8″ >

property >

property >

property >

bean >

(5)在struts-config.xml的前加入下面配置(覆盖 message-resources ),(这里使用spring管理struts的action)。

processorClass=”org.springframework.web.struts.DelegatingRequestProcessor”>

login.struts.ApplicationResources” />

value=”/WEB-INF/applicationContext.xml” />

( 6 )打开 web.xml 在 前加入如下代码 配置请求编码(使用 spring转换器,编码为utf-8)(这样统一使用utf-8,中文存储到数据库就不会出现乱码了) :

encodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

UTF-8

forceEncoding

true

encodingFilter

/*

Bootstrap设计登录页面

  1. 复制编译版的bootstrap整个文件夹到工程WebRoot下,如图:

  1. 在WebRoot新建login.jsp文件。使用bootstrap登录组件,login.jsp代码如下:

page language=”java” import=”java.util.*” pageEncoding=”utf-8″ %>

String path = request.getContextPath ();

String basePath = request.getScheme ()+ “://” + request.getServerName ()+ “:” + request.getServerPort ()+ path + “/” ;

%>

“en” >

“utf-8″ >

“X-UA-Compatible” content = “IE=edge” >

“viewport” content = “width=device-width, initial-scale=1″ >

“description” content = 登录界面 >

“author” content = “jly” >

“icon” href = “../../favicon.ico” >

<strong>登录界面</strong>

“bootstrap/css/bootstrap.min.css” rel = “stylesheet” >

“css/signin.css” rel = “stylesheet” >

“container” >

“form-signin” >

“form-signin-heading” > 用户登录

“text” id = “inputUser” class = “form-control” placeholder = 用户名 required autofocus >

“password” id = “inputPassword” class = “form-control” placeholder = 密码 required >

“checkbox” >

“checkbox” value = “remember-me” > 记住我

  1. 在WebRoot下新建文件夹css,在文件夹css下新建login.css样式文件,文件内容如下:

body {

padding-top : 40px;

padding-bottom : 40px;

background-color : #eee;

}

. form-signin {

max-width : 330px;

padding : 15px;

margin : 0 auto;

}

. form-signin . form-signin-heading ,

. form-signin . checkbox {

margin-bottom : 10px;

}

. form-signin . checkbox {

font-weight : normal;

}

. form-signin . form-control {

position : relative;

height : auto;

-webkit-box-sizing : border-box;

-moz-box-sizing : border-box;

box-sizing : border-box;

padding : 10px;

font-size : 16px;

}

. form-signin . form-control : focus {

z-index : 2;

}

. form-signin input [ type=”email” ] {

margin-bottom : -1px;

border-bottom-right-radius : 0;

border-bottom-left-radius : 0;

}

. form-signin input [ type=”password” ] {

margin-bottom : 10px;

border-top-left-radius : 0;

border-top-right-radius : 0;

}

  1. 运行login工程到服务器上,在浏览器输入 http://localhost:8080/login/login.jsp ,显示如下:

完成登录验证逻辑功能

  1. 在工程文件夹src下新建包 com.pojo(实体层) 和 com.dao(持久层),切换到MyEclipse Database Explorer视图打开login数据库的userinfo表,右键选择Hibernate reverse engineering弹出界面,src文件夹选择login/src,包选择com.pojo,选择需要生成的项,点击下一步将id generator设置为native(根据数据库决定是什么就是什么,一般自动编号可以选择native,如果主键是自己确定则选择assigned),点击finish,如图所示:

将生成的UserinfoDao.java拖入com.dao包中,如图:

  1. 新建 com.service包,包下新建类UserinfoService.java封装持久化操作,代码如下:

package com . service ;

com . pojo . Userinfo ;

import com . dao . UserinfoDAO ;

public class UserinfoService {

// 依赖注入 UserinfoDAO 要设置 spring 配置文件 applicationContext.xml

private UserinfoDAO userinfoDAO ;

public UserinfoDAO getUserinfoDAO () {

return userinfoDAO ;

}

public void setUserinfoDAO ( UserinfoDAO userinfoDAO ) {

this . userinfoDAO = userinfoDAO ;

}

// 判断登录

public boolean Login ( Userinfo user )

{

if ( userinfoDAO .findByExample(user).size()>0)

return true ;

return false ;

}

}

  1. 新建 action和actionForm,右键->New->Other->MyEclipse->Web Struts 1.x->Struts Form,Action&Jsp->Next弹出界面配置Form,输入Use case为userinfo,添加Form Properties,添加用户名username,用户密码userpass(实例属性,对应视图层表单的name,这里对应登录界面jsp表单的用户名和用户密码,这样客户端才能通过struts实例化这个formbean),如图:

点击下一步,配置Action,superclass继承选择org.apache.struts.actions.DispatchAction(即一个action可以对应很多方法动作);input source选择login.jsp(提交表单数据的页面);选择parameter选项,设置参数为method(这里随意,到时调用action的某个函数动作要由它指定);选择Forward选项,点击添加几个Forwards(用于表单提交动作之后逻辑处理后可以进行相关的跳转),然后点击finish即可,如图:

此时生成了Action和Form类,Form作为视图层实例化的Bean,变量需要对应视图层输入jsp的表单元素的属性名与ID,Action作为动作反应,是逻辑处理层对视图层的submit逻辑处理。

对生成的UserinfoAction.java修改逻辑处理(覆盖 execute 函数 增加 Loginexecute 函数 ),修改后代码如下:

package com . struts ;

import javax . servlet . http . HttpServletRequest ;

import javax . servlet . http . HttpServletResponse ;

import org . apache . struts . action . Action ;

import org . apache . struts . action . ActionForm ;

import org . apache . struts . action . ActionForward ;

import org . apache . struts . action . ActionMapping ;

import com . service . UserinfoService ;

import com . pojo . Userinfo ;

//DispatchAction 允许同一个 action 多个函数用于动作反应

public class UserinfoAction extends DispatchAction {

依赖注入 UserinfoService 要设置 spring 配置文件 applicationContext.xml

private UserinfoService userinfoService ;

public UserinfoService getUserinfoService () {

return userinfoService ;

}

public void setUserinfoService ( UserinfoService userinfoService ) {

this . userinfoService = userinfoService ;

}

public ActionForward Loginexecute ( ActionMapping mapping , ActionForm form ,

HttpServletRequest request , HttpServletResponse response ) {

UserinfoActionForm userinfoActionForm = ( UserinfoActionForm ) form ; // TODO Auto-generated method stub

Userinfo user = new Userinfo ();

user . setUsername ( userinfoActionForm . getUsername ());

user . setUserpass ( userinfoActionForm . getUserpass ());

// 如果用户名和密码输入正确登录成功

if ( userinfoService . Login ( user ))

{

return mapping . findForward ( “success” );

}

else

{

return mapping . findForward ( “error” );

}

}

}

  1. 由于 UserinfoAction.java 和 UserinfoService.java 采用了 spring 相关依赖注入技术,因此在 spring 配置文件 applicationContext.xml 的 前加入下面配置。

依赖注入 –>

这里标红那里要对应 struts-config.xml相应的action的path=”/userinfo”,此为action的名字,视图层可以调用这个动作,并struts通过spring来进行执行(这里使用spring管理struts的action)。

  1. 修改视图层的login.jsp将用户名和密码输入表单的id和name设置映射为对应UserinfoForm的变量名。

修改form表单action为

  1. 工程部署到服务器上,打开浏览器,输入 http://localhost:8080/login/login.jsp ,进行测试,输入正确用户密码时:

登录实例(SSH框架+bootstrap 3+DWR+AJAX)

DWR环境准备

(1)下载dwr环境包,这里用dwr3.x.jar,将dwr.jar复制到前面工程的WebRoot/WEB-INF/lib下。

(2)配置 web.xml 文件。在 web.xml 的前 加 入如下代码,进行 DWR 框架配置。

dwr-invoker org.directwebremoting.servlet.DwrServlet debug true

dwr-invoker /dwr/*

(3)在web.xml同目录下新建dwr.xml(根据dwr1.x 2.x还是3.x配置)文件。配置如下:

-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN”

“http://www.getahead.ltd.uk/dwr/dwr20.dtd”>

DWR实例测试

  1. 在UserinfoAction.java类中添加函数如下:

/ / 通过传入的用户密码判断登录 返回信息

public String signin(String username,String userpass)

{

String mess= “error” ;

Userinfo user= new Userinfo(username,userpass);

System. out .println( “55″ );

if ( userinfoService .Login(user))

mess= “success” ;

return mess;

}

  1. 配置dwr.xml文件。将 signin 方法配置到dwr.xml中,使其可以访问。

xml version=”1.0″ encoding=”UTF-8″?>

-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN”

“http://www.getahead.ltd.uk/dwr/dwr20.dtd”>

  1. 在前台视图login.jsp文件的

    标签之间加入下面:

script >

script >

script >

其次,编写登陆按钮的提交事件,事件名称是onValidation();具体实现代码如下(

标签之间):

    function onValidation()

{

signin.signin(document.getElementById( “username” ).value,document.getElementById( “userpass” ).value,signinCallback);

}

function signinCallback(data){

if (data== “error” ) alert( “ 用户或密码错误 “ );

else if (data== “success” ) window.location.href= “success.jsp” ;

}

script >

将登录按钮添加onclick属性为 onClick=”onValidation()”,type 属性改为 type=”button” 。

(4) 运行工程,打开浏览器,输入用户密码验证:

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn