Android电子书项目实训【服务器Struts部分】【3】

1、Struts2 的配置文件

这些配置文件多是返回JSON字符串,继承json-default,注意web项目应该有struts-json-plugin插件。

<?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.action.extension" value="do,action,html" />
	<package name="ebpg" extends="json-default" >
		<!-- 登录 action -->
		<action name="loginAct" class="edu.freshen.action.LoginAction" >
			<result name="OK" type="json" >
				<param name="root">ai</param>
			</result>
		</action>	
		<!-- 注册 action -->
		<action name="regAccountAct" class="edu.freshen.action.LoginAction"
			method="regestAccount" >
			<result name="success" type="json" >
				<param name="root">ai</param>
			</result>
		</action>	
		<!-- 查询电子类别 action -->
		<action name="queryEbTypeAction" class="edu.freshen.action.EbookTypeAction" >
			<result name="success" type="json" >
				<param name="root">bookTypes</param>
			</result>
		</action>
		<!-- 查询所有 电子书 -->
		<action name="queryAllEbAction" class="edu.freshen.action.EbookInfoAction" >
			<result name="success" type="json">
				<param name="root">ebooks</param>
			</result>
		</action>
		<!-- 根据类型 查询电子书 -->
		<action name="queryEbByTypeAction" class="edu.freshen.action.EbookInfoAction" 
			method="queryBooksByTypeId">
			<result name="success" type="json">
				<param name="root">ebooks</param>
			</result>
		</action>
		<!-- 查找评论 -->
		<action name="queryComAct" class="edu.freshen.action.EbookComAction">
			<result name="success" type="json">
				<param name="root">items</param>
			</result>
		</action>
		<!-- 新加 评论 -->
		<action name="createComAct" class="edu.freshen.action.EbookComAction"
			method="createComment">
			<result name="success" type="json">
				<param name="root">commentStr</param>
			</result>
		</action>
		<!-- 新添加 用户信息 -->
		<action name="newUserInfoAct" class="edu.freshen.action.UserInfoAction">
			<result name="success" type="json">
				<param name="root">userInfo</param>
			</result>
		</action>
		<!-- 根据账户 id,查找 用户信息 -->
		<action name="queryUserByAccAct" class="edu.freshen.action.UserInfoAction"
			method="queryUser">
			<result name="success" type="json">
				<param name="root">userInfo</param>
			</result>
		</action>
	</package>

</struts>    

2、action的编写

LoginAction,处理账户登录功能

public class LoginAction extends ActionSupport {
	//账户名和密码
	private String loginName;
	private String loginPwd;
	//
	private AccountInfo ai;
	
	//实现登录验证
	public String execute(){
		System.out.println("LoginAction running……"+loginName+" "+ loginPwd);
		//调用DAo,验证登录信息
		ai =new AccountInfoDao().queryAccountByLogin(loginName, loginPwd);
		if(ai==null){
		}else{
		}
		return "OK";
	}
	//实现 账户注册
	public String regestAccount(){
		//判空
		if(loginName==null || loginName.trim().length()<3 || loginPwd==null || loginPwd.trim().length()<3)
			return SUCCESS;
		int r=new AccountInfoDao().checkLoginName(loginName);
		if(r==0){
			//创建 需要注册账户的基本信息
			AccountInfo ai =new AccountInfo();
			ai.setLoginName(loginName);
			ai.setLoginPwd(loginPwd);
			ai.setLevel(0);
			ai.setScore(0);
			ai.setLastLoginDate(new Date());
			String ip = ServletActionContext.getRequest().getRemoteAddr();
			ai.setLastLloginIP(ip);
			int n =new AccountInfoDao().insertAccount(ai);
			System.out.println("注册账户的结果是 "+ n);
			this.ai=ai;
		}else{
			System.out.println("账户名已存在");
		}
		return SUCCESS;
	}

	public String getLoginName() {
		return loginName;
	}


	public void setLoginName(String loginName) {
		this.loginName = loginName;
	}


	public String getLoginPwd() {
		return loginPwd;
	}


	public void setLoginPwd(String loginPwd) {
		this.loginPwd = loginPwd;
	}


	public AccountInfo getAi() {
		return ai;
	}


	public void setAi(AccountInfo ai) {
		this.ai = ai;
	}
	
	
}

处理用户信息action

public class UserInfoAction extends ActionSupport {
	private UserInfo userInfo;	//用户信息 对象
	private int accountId;	//账户ID
	//新增 用户
	public String execute(){
		new UserInfoDao().insertUserInfo(userInfo);
		return SUCCESS;
	}
	//根据登录账户的ID,查找用户信息
	public String queryUser(){
		userInfo =new UserInfoDao().queryUserByAccountId(accountId);
		return SUCCESS;
	}
	
	public UserInfo getUserInfo() {
		return userInfo;
	}
	public void setUserInfo(UserInfo userInfo) {
		this.userInfo = userInfo;
	}
	public int getAccountId() {
		return accountId;
	}
	public void setAccountId(int accountId) {
		this.accountId = accountId;
	}
	
}
处理电子书类别action

public class EbookTypeAction extends ActionSupport {
	public List<EbookType> bookTypes;
	
	public String execute(){
		bookTypes = new EbookTypeDao().queryAllbookType();
		return SUCCESS;
	}

	public List<EbookType> getBookTypes() {
		return bookTypes;
	}

	public void setBookTypes(List<EbookType> bookTypes) {
		this.bookTypes = bookTypes;
	}
}
处理电子书访问action

public class EbookInfoAction extends ActionSupport {
	private List<EbookInfo>ebooks;
	private int ebookTypeId;
	
	//查询所有电子书
	public String execute(){
		ebooks=new EbookInfoDao().queryAllBooks();
		return SUCCESS;
	}
	//根据指定的类别,查询电子书
	public String queryBooksByTypeId(){
		ebooks =new EbookInfoDao().queryBooksByType(ebookTypeId);
		return SUCCESS;
	}

	public List<EbookInfo> getEbooks() {
		return ebooks;
	}

	public void setEbooks(List<EbookInfo> ebooks) {
		this.ebooks = ebooks;
	}

	public int getEbookTypeId() {
		return ebookTypeId;
	}

	public void setEbookTypeId(int ebookTypeId) {
		this.ebookTypeId = ebookTypeId;
	}
	
	
	
}
处理评论的action

public class EbookComAction extends ActionSupport {
	private int ebookId;	//电子书的id
	private List<EbookComment> items ;	//存放评论对象
	private String commentStr;	//评论的具体内容
	private int accountId;		//发布评论信息的账户ID
	
	//查出指定 电子书的 所有评论信息
	public String execute(){
		items = new EbookCommentDao().queryBookComment(ebookId);
		return SUCCESS;
	}
	//对指定的书籍 进行评论
	public String createComment(){
		EbookComment ebc =new EbookComment();
		ebc.setAccountId(accountId);
		ebc.setComment(commentStr);
		ebc.setCreateDate(new Date());
		ebc.setEbookId(ebookId);
		System.out.println("发布评论 :"+ebc);
		int n =new EbookCommentDao().insertNewComment(ebc);
		if(n>0){
			
		}else{
			
		}
		return SUCCESS;
	}
	
	public int getEbookId() {
		return ebookId;
	}

	public void setEbookId(int ebookId) {
		this.ebookId = ebookId;
	}

	public List<EbookComment> getItems() {
		return items;
	}

	public void setItems(List<EbookComment> items) {
		this.items = items;
	}
	public String getCommentStr() {
		return commentStr;
	}
	public void setCommentStr(String commentStr) {
		this.commentStr = commentStr;
	}
	public int getAccountId() {
		return accountId;
	}
	public void setAccountId(int accountId) {
		this.accountId = accountId;
	}
	
}










  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值