东软培训-001

1 vo层 javaBean

2 工具层 一类 数据库打开与关闭

3 DAO层 接口

4 实现层 实现类

5 代理层

6 工场层

7 JSP

8 servlet

=============================================================

D:\Java\jdk1.7.0_67\bin\native2ascii 编码工具

==========================================================

使用struts实现登录

//vo层

package org.mo.vo;

public class User implements java.io.Serializable {

	private String account;

	private String password;

	private String repassword;

	private String sumbitTag;

	public String getAccount() {
		return account;
	}

	public void setAccount(String account) {
		this.account = account;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getRepassword() {
		return repassword;
	}

	public void setRepassword(String repassword) {
		this.repassword = repassword;
	}

	public String getSumbitTag() {
		return sumbitTag;
	}

	public void setSumbitTag(String sumbitTag) {
		this.sumbitTag = sumbitTag;
	}

}
//struts文件配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<constant name="struts.devMode" value="true"/>
	<constant name="struts.locale" value="zh_CN"/>
	<constant name="struts.i18n.encoding" value="UTF-8"/>

	<package name="mo" extends="struts-default" namespace="/">
		<action name="login" class="org.mo.action.Login">
			<result name="towelcome">/welcome.jsp</result>
			<result name="input">/login.jsp</result>
		</action>
	</package>
</struts>
//controller层
package org.mo.action;

import org.mo.vo.User;

import com.opensymphony.xwork2.ActionSupport;

public class Login extends ActionSupport {

	private User user;

	@Override
	public String execute() throws Exception {
		return "towelcome";
		// Login.properties
	}

	@Override
	public void validate() {
		if (user.getAccount().trim().length() == 0) {
			this.addFieldError("account", this.getText("account"));
		}
		if (user.getPassword().trim().length() == 0) {
			this.addFieldError("password", this.getText("password"));
		}
		if (user.getPassword().trim().length() <= 6) {
			this.addFieldError("password2", this.getText("password2"));
		}
		super.validate();
	}

	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

}
//Login.properties
account=\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A
password=\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A
password2=\u5BC6\u7801\u4E0D\u80FD\u5C0F\u4E8E6\u4F4D
//login.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
	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 ‘login.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">
	-->
<script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
</head>

<body>
	<div class="container">
		<div class="row">
			<div class="col-xs-6 col-md-4">
				<s:if test="hasFieldErrors()">
					<s:iterator value="fieldErrors">
						<div class="alert alert-danger alert-dismissible fade in">
							<button type="button" class="close" data-dismiss="alert">
								<span aria-hidden="true">&times;</span><span class="sr-only">Close</span>
							</button>
							<s:property value="value[0]" />
						</div>
					</s:iterator>
				</s:if>

				<form action="login" method="post" role="form">
					<input type="hidden" name="user.sumbitTag" value="login">
					<div>帐号:</div>
					<input type="text" name="user.account" class="form-control"><br />
					<div>密码:</div>
					<input type="password" name="user.password" class="form-control"><br />
					<hr />
					<input type="submit" value="提交" class="btn btn-default">
				</form>
			</div>
		</div>
	</div>

</body>
</html>

项目截图

时间: 2024-10-19 11:38:45

东软培训-001的相关文章

东软培训-003

继续上面的一篇文章 package org.mo.action; import java.util.List; import org.mo.DAO.UserJDBCDAO; import org.mo.model.UserModel; import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport { private List<UserModel> list; private

东软培训-004

昨天说的那个hibernate太简单了,所以就没发出来,今天教spring+springmvc //LoginAction.java package org.mo.spring; import java.util.HashMap; import java.util.Map; import org.springframework.validation.BindException; import org.springframework.web.servlet.ModelAndView; import

东软培训-002

数据库操作 实体bean package org.mo.model; public class UserModel { private Integer id; private String name; private Integer age; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } p

【绝密外泄】风哥Oracle数据库DBA高级工程师培训视频教程与内部资料v0.1

由于是[绝密外泄]资料,防止被查,需要的小伙伴赶紧下载附件中的课件文档. 由于视频太大了,已放在百度网盘了,已经在附中说明,以免被和谐. ---------------------------------------------- 第一部分:Oracle视频压缩包目录列表 ---------------------------------------------- 01.[绝密外泄]风哥全套Oracle数据库DBA高级工程师培训教程-视频分章节(不断更新) 02.[绝密外泄]风哥全套Oracle

web前端培训机构哪家好?

AAA教育课程设计引进北美先进技术,贴近中国软件企业的实际需求,同时,聘请北美海外专家与来自IBM.华为.用友.亚信.东软等国内外名企的一线实战专家担任讲师,以确保高端培训效果.AAA教育在课程设计与培训模式上不断创新,开创"零首付.低押金,就业后付款"的就业模式,改革培训模式保持培训规模扩大的同时确保90%以上的就业率,同时高质量就业. AAA教育在线在西安.沈阳.重庆.襄樊.长沙.深圳等全国各地,都设有人才服务外包基地,合作院校上千家,合作单位上万家,在校生上万人,培养出一批又一批

android内部培训视频_第四节(1)_异步网络操作

第四节(1):异步网络操作  一.结合asyncTask下载网络图片 1.定义下载类,继承自asyncTask,参数分别为:String(url地址),Integer(刻度,本例没有用到),BitMap(下载成功后的图片) public class downloadImageTask extends AsyncTask<String, Integer, Bitmap> { /** * 在线程开始之前执行 */ @Override protected void onPreExecute() {

Linux培训教程 linux中nl命令使用介绍

nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能.兄弟连linux培训 小编介绍一下:linux中 nl 命令使用介绍. 1.命令格式: nl [选项]... [文件]... 2.命令参数: -b :指定行号指定的方式,主要有两种: -b a :表示不论是否为空行,也同样列出行号(类似 cat -n); -b t :如果有空行,空的那一行

ABAP、BW培训笔记

ABAP开发 目标:ABAP编辑器.报表程序创建语法检查修改执行等基本操作.ABAP数据字典.SQL的使用 大体介绍 ABAP:Advanced  Business    Application  Programming ABAP第四代的语言(ABAP/4),到后期会有JAVA的东西引进来,PI有自己的JAVA端,但ERP/R3还是主要用ABAP开发 报表(Reports)不会改变业务(主要关注报表开发):对话(Dialogs)可能会改变业务.功能增强的开发 ABAP程序组成要素:关键字Keyw

东软 内部员工离职述说

怀着对软件的梦想,我来到了东软 从看到沈阳园区的第一眼起,我就深深喜欢上了这里,大气磅礴壮美的园区洋溢的是宁静和谐的气氛 当时真的觉得东软和宣传的一样简单.务实.美 起初很喜欢东软那种学校的氛围文化,但是不知道是因为我来到这里后发现的事实真相越来越多.还是因为东软真的变质了,我真的开始厌恶这里 本来作为一个东软的员工,我一向认为那个公司都有自己黑暗的一面,而且员工不应该说公司的不好,那样的话岂非自煽耳光证明自己选择的错误 现在我要离开这里了,带着破灭的梦想和伤心,可能还有稍许的愤慨,发表此文权当