package y2javaee.xmal2.operation;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.jstl.sql.Result;
import y2javaee.xmal2.common.ArticleDao;
import y2javaee.xmal2.common.IArticleDao;
import y2javaee.xmal2.common.IuserDao;
import y2javaee.xmal2.common.userDao;
import y2javaee.xmal2.entity.Aritcle;
import y2javaee.xmal2.entity.IAritcle;
import y2javaee.xmal2.entity.IUsers;
import y2javaee.xmal2.entity.Users;
/*
* 处理对文章的相关操作
**/
public class ArticleBo implements ICommand{
private String nextPage;
private Result result;
private IArticleDao dao=null;
private IAritcle aritcle=null;
public ArticleBo(String nextPage)
{
this.nextPage=nextPage;
dao=new ArticleDao();
}
public String execute(ServletRequest request) {
String cmd=request.getParameter("cmd");
//处理搜索
if(cmd.equalsIgnoreCase("selectArticle"))
{
int type=0;
type=Integer.parseInt(request.getParameter("type"));//文章类型
String title=request.getParameter("title");//标题
String writer=request.getParameter("writer");//作者
List values=new ArrayList();
String sqlValue="";
HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=(IUsers)session.getAttribute("user");
if(user==null)
{
sqlValue="select * from Article where 1=1";
}
else
{
sqlValue="select * from Article where 1=1 and userid=?";
values.add(user.getUserId());
}
if(type!=0)
{
values.add(type);
sqlValue=sqlValue+" and type=?";
}
if(!title.equalsIgnoreCase(""))
{
sqlValue=sqlValue+" and title like ?";
values.add("%"+title+"%");
}
if(!writer.equalsIgnoreCase(""))
{
IuserDao uDao=new userDao();
result=uDao.validUser(writer);
if(result!=null)
{
Map row=result.getRows()[0];
int uid=((Integer)row.get("userId")).intValue();
if(user!=null)
{
sqlValue=sqlValue+" or userID=?";
}
else
{
sqlValue=sqlValue+" and userID=?";
}
values.add(uid);
}else
{
request.setAttribute("msg", "对不起,没有此作者!");
}
}
result=dao.selectArticleByType(values, sqlValue);
/*HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=(IUsers)session.getAttribute("user");
int userID=0;//记录用户的纺号
//判断有没有输入作者查询
if(writer!="")
{
IuserDao uDao=new userDao();
result=uDao.validUser(writer);
if(result!=null)
{
Map row=result.getRows()[0];
userID=((Integer)row.get("userId")).intValue();
}
{
userID=0;
}
}
//判断有没有登录
if(user==null)
{
//非登录用户查询
if(title.equalsIgnoreCase("")&&writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(type);
}
else if(!title.equalsIgnoreCase("")&&writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(title,type);
}
else if(title.equalsIgnoreCase("")&&!writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(type,userID);
}
else
{
result=dao.selectArticleByType(type,userID,title);
}
}
else
{
//登录用户查贸询
if(title.equalsIgnoreCase("")&&writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(type);
}
else if(!title.equalsIgnoreCase("")&&writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(title,type);
}
else if(title.equalsIgnoreCase("")&&!writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(type,user.getUserId());
}
else if(!title.equalsIgnoreCase("")&&!writer.equalsIgnoreCase(""))
{
result=dao.selectArticleByType(type,user.getUserId(),title);
}
else
{
IuserDao uDao=new userDao();
result=uDao.validUser(user.getUserName());
Map row=result.getRows()[0];
int uid=((Integer)row.get("userId")).intValue();
dao=new ArticleDao();
result=dao.selectArticleByType(type,uid);
}
//跳转到登录用户页面
}*/
//判断有没有搜索到相关文章
if(result==null||result.getRowCount()==0)
{
request.setAttribute("msg", "没有你要找的相关文章");
}
else
{
//实例list对象
List<IAritcle> list=new ArrayList<IAritcle>();
//调用静态方法把搜到的文章放在list列表中
list=ShowAllArticle.showArticle(result);
//把搜到的条目放到请求中转到页面
request.setAttribute("list", list);
}
return this.nextPage;
}
//文章详细信息
else if(cmd.equalsIgnoreCase("articleParticular"))
{
HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=(Users)session.getAttribute("user");
if(user==null)
{
request.setAttribute("msg", "对不起,你还没有登录,请先登录!");
nextPage="/index.jsp";
}
else
{
aritcle=new Aritcle();
//从请求中获得文章ID
int articleID=Integer.parseInt(request.getParameter("articleId"));
//查出对应文章详细信息
result=dao.selectArticleId(articleID);
//调用自定义静态方法获得对应文章的详细信息
aritcle=ShowAllArticle.showArticleId(result);
userDao uDao=new userDao();
//查出文章的作者
result=uDao.validUser(aritcle.getUserID());
Map row1=result.getRows()[0];
String userName=(String)row1.get("userName");
request.setAttribute("userName", userName);
request.setAttribute("aritcle", aritcle);
nextPage="/WEB-INF/jsp/show.jsp";
}
return this.nextPage;
}
//显示某个类型的文章信息
else if(cmd.equalsIgnoreCase("article"))
{
HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=(Users)session.getAttribute("user");
aritcle=new Aritcle();
int type=Integer.parseInt(request.getParameter("type"));
result=dao.selectArticleByType(type);
//实例list对象
List<IAritcle> list=new ArrayList<IAritcle>();
//调用静态方法把搜到的文章放在list列表中
list=ShowAllArticle.showArticle(result);
//把搜到的条目放到请求中转到页面
request.setAttribute("list", list);
return this.nextPage;
}
//转到发表文章页面判断是否是登录用户
else if(cmd.trim().equalsIgnoreCase("publishPage"))
{
HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=new Users();
user=(Users)session.getAttribute("user");
if(user==null)
{
request.setAttribute("msg", "对不起!您还没有登录!请先登录!");
nextPage="/index.jsp";
}
return this.nextPage;
}
//发表文章
else if(cmd.trim().equalsIgnoreCase("publish"))
{
String title=request.getParameter("title");
String content=request.getParameter("content");
int type=Integer.parseInt(request.getParameter("type"));
HttpSession session = ((HttpServletRequest)request).getSession();
IUsers user=new Users();
user=(Users)session.getAttribute("user");
int userId=user.getUserId();
aritcle=new Aritcle();
aritcle.setTitle(title);
aritcle.setContent(content);
aritcle.setType(type);
aritcle.setUserID(userId);
int count=dao.insertArticle(aritcle);
if(count==0)
{
request.setAttribute("msg", "发表失败,请刷新后重试");
}
else
{
request.setAttribute("msg", "恭喜你!发表成功!");
}
return this.nextPage;
}
//首页显示所有文章
else if(cmd.trim().equalsIgnoreCase("main"))
{
List[] ars=new ArrayList[4];
//调用自定义静态方法,取得所有文章
ars=ShowAllArticle.showArticle();
request.setAttribute("ars", ars);
return this.nextPage;
}
return nextPage;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
北大青鸟ACCP5.0第二学年项目:E家园
共190个文件
gif:40个
java:30个
class:30个
需积分: 10 61 下载量 192 浏览量
2008-10-29
19:48:46
上传
评论
收藏 6.91MB RAR 举报
温馨提示
这是北大青鸟ACCP5.0第二学年项目:E家园的完整参考答案,其中包括PPT,数据库,由于要与上个项目通讯录连WEBSERVICE,所以也有通讯录的参考代码也传了上来。
资源推荐
资源详情
资源评论
收起资源包目录
北大青鸟ACCP5.0第二学年项目:E家园 (190个子文件)
ArticleBo.class 6KB
CheckLoginServlet.class 4KB
UserBo.class 4KB
ControlServlet.class 3KB
ArticleDao.class 3KB
SQLCommandBean.class 3KB
ShowAllArticle.class 3KB
ArticleDaoTest.class 2KB
bookBeen.class 2KB
userDao.class 2KB
userDaoTest.class 2KB
CommandDao.class 2KB
ShowAllArticleTest.class 2KB
SysUtil.class 2KB
DBConnection.class 2KB
Aritcle.class 2KB
SetCharaEncoding.class 1KB
SysUtil.class 1KB
Users.class 1KB
userBeen.class 1KB
DBConnectionTest.class 1KB
IArticleDao.class 551B
IAritcle.class 427B
ISQLCommandBeen.class 425B
IuserDao.class 387B
IUsers.class 381B
ICommandDao.class 292B
ICommand.class 193B
IDBConnection.class 179B
IaddressBook.class 179B
.classpath 3KB
css.css 2KB
Thumbs.db 83KB
banner.gif 30KB
index_11.gif 8KB
index_1.gif 8KB
logo.gif 4KB
left02.gif 4KB
left04.gif 4KB
left03.gif 4KB
bg06.gif 4KB
index_4.gif 3KB
index_10.gif 3KB
cen06.gif 3KB
cen05.gif 2KB
bg05.gif 810B
button02.gif 664B
button03.gif 660B
button01.gif 652B
line02.gif 393B
bg09.gif 283B
bg03.gif 275B
index_6.gif 169B
isms.gif 162B
bg10.gif 155B
dot02.gif 153B
index_5.gif 138B
index_9.gif 130B
bg01.gif 128B
iboy.gif 125B
igirl.gif 124B
cen04.gif 121B
cen02.gif 121B
line01.gif 114B
bg13.gif 109B
index_3.gif 107B
bg02.gif 96B
bg08.gif 81B
bg07.gif 79B
bg04.gif 78B
dot01.gif 76B
bg12.gif 66B
bg11.gif 66B
top.html 2KB
bar.html 1KB
footer.html 591B
xbean-2.2.0.jar 2.28MB
spring-1.2.6.jar 1.62MB
wstx-asl-3.2.0.jar 427KB
standard.jar 384KB
xfire-core-1.2.6.jar 356KB
mail-1.4.jar 330KB
jtds-1.2.jar 279KB
commons-httpclient-3.0.jar 238KB
saaj-impl-1.3.jar 231KB
jaxen-1.1-beta-9.jar 200KB
commons-beanutils-1.7.0.jar 160KB
xbean-spring-2.8.jar 150KB
wsdl4j-1.6.1.jar 142KB
jdom-1.0.jar 130KB
xfire-aegis-1.2.6.jar 109KB
XmlSchema-1.1.jar 108KB
activation-1.1.jar 54KB
xfire-spring-1.2.6.jar 47KB
commons-codec-1.3.jar 40KB
xfire-jaxws-1.2.6.jar 36KB
commons-logging-1.0.4.jar 33KB
xfire-annotations-1.2.6.jar 24KB
stax-api-1.0.1.jar 24KB
jsr173_api-1.0.jar 24KB
共 190 条
- 1
- 2
资源评论
lulifang
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功