JavaTask学习手册Word下载.docx
《JavaTask学习手册Word下载.docx》由会员分享,可在线阅读,更多相关《JavaTask学习手册Word下载.docx(15页珍藏版)》请在冰豆网上搜索。
inputname="
username"
type="
text"
id="
size="
30"
/label>
/tr>
td>
密码:
password"
tdalign="
right"
colspan="
2"
reset"
button"
重置"
span>
&
nbsp;
&
/span>
submit"
button2"
登录"
/table>
/form>
(2)登录后台验证代码
publicUserlogin(finalUseru){
Connectionconn=null;
PreparedStatementpstmt=null;
ResultSetrs=null;
Useruser=null;
try{
conn=DataAccess.getConnection();
//获取数据库连接
pstmt=conn.prepareStatement("
select*fromtb_userwhereuname=?
andupassword=?
"
);
//创建Statement对象
pstmt.setString(1,u.getUname());
pstmt.setString(2,u.getUpassword());
rs=pstmt.executeQuery();
//执行查询条件返回记录集rs
if(rs.next()){
intuid=rs.getInt("
uid"
user=newUser(u.getUname(),u.getUpassword());
user.setUid(uid);
}
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}finally{
DataAccess.close(conn,pstmt,rs);
}
returnuser;
}
二、主界面
(1)获取数据库连接
第一步加载数据库驱动,此处为加载mysql驱动
Class.forName("
com.mysql.jdbc.Driver"
//加载mysql数据驱动
第二步创建数据库连接,注意连接数据库的URL和账号和密码
Con=DriverManager.getConnection("
jdbc:
mysql:
//localhost:
3306/mldn"
"
root"
123111"
//创建数据连接
第三步创建一个Statement,用于执行SQL语句
Statement
stmt
=
conn.createStatement();
第四步执行SQL语句
ResultSet
rs
stmt.executeQuery("
SELECT
*
FROM
..."
第五步处理结果集
while(rs.next()){
String
name
rs.getString("
name"
pass
rs.getString
(1);
……
}
第六步关闭数据库连接
rs.close();
stmt.close();
conn.close();
(2)核心功能介绍
a、论文列表查看
论文列表查看表单代码:
formaction="
width="
740px"
<
th>
用户编号<
/th>
论文名称<
发表日期<
期刊名称<
作者排名<
期刊类型<
备注<
操作<
%
for(inti=0;
i<
list.size();
i++){
blog=(Article)list.get(i);
%>
%=blog.getUser().getUid()%>
<
ahref="
/JavaTask/servlet/ManagerArticleServlet?
status=getArticle&
id=<
%=blog.getAid()%>
%=blog.getAname()%>
/a>
%=blog.getAdate()%>
%=blog.getAqkname()%>
center"
%=blog.getAnamepm()%>
%=blog.getArticleType().getTypename()%>
textareastyle="
border:
0em;
background-color:
white;
rows="
1"
>
%=blog.getAbeizhu()%>
/textarea>
<
javascript:
p_update(<
%=blog.getAid()%>
)"
imgsrc="
/JavaTask/images/edit.gif"
alt="
编辑"
p_del(<
/JavaTask/images/delete.gif"
删除"
%}%>
<
center>
brstyle="
border-bottom-style:
dotted;
2px"
/>
总共&
%=pag.totalPageNumber()%>
页,当前是第&
%=pag.getCurrentPage()%>
页<
br/>
/JavaTask/servlet/AdminServlet"
selectname="
currentPage"
%for(inti=1;
i<
=pag.totalPageNumber();
i++){%>
optionvalue="
%=i%>
第&
/option>
%};
%>
/select>
跳转"
/JavaTask/servlet/AdminServlet?
currentPage=1"
第一页<
currentPage=<
%=pag.getPreviousPage()%>
上一页<
%=pag.getNextPage()%>
下一页<
%=pag.totalPageNumber()%>
最后一页<
/center>
论文列表查看后台代码:
publicList<
Article>
getPerPageArticle(finalintcurrentPage,finalintperSize){
List<
list=newArrayList<
();
Stringsql="
select*fromtb_articleorderbyaidlimit?
?
;
pstmt=conn.prepareStatement(sql);
pstmt.setInt(1,(currentPage-1)*perSize);
pstmt.setInt(2,perSize);
while(rs.next()){
intaid=rs.getInt("
aid"
UserDaouserDao=newUserDaoImpl();
Useruser=userDao.getUserByUid(uid);
Stringaname=rs.getString("
aname"
Dateadate=rs.getDate("
adate"
Stringaqkname=rs.getString("
aqkname"
intanamepm=rs.getInt("
anamepm"
inttypeid=rs.getInt("
typeid"
ArticleTypeDaoarticleTypeDao=newArticleTypeDaoImpl();
ArticleTypearticleType=articleTypeDao.getArticleTypeByTypeId(typeid);
Stringabeizhu=rs.getString("
abeizhu"
Articlearticle=newArticle(articleType,user,aname,adate,aqkname,anamepm,abeizhu);
article.setAid(aid);
list.add(article);
returnlist;
b、新增论文
新增论文表单代码:
/JavaTask/servlet/ManagerArticleServlet"
status"
insertafter"
100"
onclick="
WdatePicker()"
20"
期刊类型:
%
@SuppressWarnings("
unchecked"
)
ArticleType>
list=(List<
)request.getAttribute("
list"
ArticleTypecategory=null;
%>
%for(inti=0;
list.size();
i++){category=list.get(i);
%=category.getTypeid()%>
%=category.getTypename()%>
备注:
textareaname="
cols="
180"
40"
添加"
新增论文后台代码:
publicIntegerinsertArticle(finalArticlearticle){
inti=0;
insertintotb_article(uid,aname,adate,aqkname,anamepm,typeid,abeizhu)values(?
?
//创建prepareStatement对象
pstmt.setInt(1,article.getUser().getUid());
pstmt.setString(2,article.getAname());
pstmt.setDate(3,newjava.sql.Date(article.getAdate().getTime()));
pstmt.setString(4,article.getAqkname());
pstmt.setInt(5,article.getAnamepm());
pstmt.setInt(6,article.getArticleType().getTypeid());
pstmt.setString(7,article.getAbeizhu());
i=pstmt.executeUpdate();
DataAccess.close(conn,pstmt);
returni;
c、修改论文
修改论文表单代码:
Articleblog=(Article)request.getAttribute("
article"
update"
id"
%=blog.getAname()%>
onClick="
%=blog.getAdate()%>
%=blog.getAqkname()%>
%=blog.getAnamepm()%>
更新"
修改论文后台代码:
publicIntegerupdate(finalArticlearticle){
updatetb_articlesetuid=?
aname=?
adate=?
aqkname=?
anamepm=?
typeid=?
abeizhu=?
whereaid=?
//创建PreparedStatement对象