序文
ほぼ週終えた後、私は最終的に、このブログを書くために強さを持っています。
いくつかの問題のうち3週間の試験+個人的な感情は月のためにスリープ状態に私を導いた、唐Chuangshang 23時間毎晩ほとんど眠ることができる、中央を覚ます、クラスベースの口論週間のN倍である、私を導きましたもはやクラスベースの努力を行います。いくつかのことが起こるにバインドされているようだ、何人かの人々はそれから離れて歩いて、再びそれらを見ることはありません...、あなたの人生の思い出に残る合計で書き留め運命に思える
大学に、常に他の人に見せるために自分の負側にしたくありません。あまりにも多くの考えや思い出が、彼のブログで少しだけ口を言及し、自分自身を慰めるために話をします。うまくいけば、私はこの経験を書いて、私は研究の新しい年を開始することができない前にトリビア綱の周りではありません。
クラスベースの要件
クラスベースの実験装置は、管理システムを行うために必要な、特定の機能は、私のブロック図を参照することができます。恥ずかしいが、私は本当に唯一のフロントエンド(フロントエンドのフレームワークのブートストラップを学習し、使用)の設計およびサーブレットパッケージCRUD操作を終えました。特定の論理機能は、唯一の理由は、私は肉体的にも精神的に疲れと組み合わせてわずか2週間を持っていますが、完了しなかった時のために、それは後悔すること。
図機能モジュール
まず説明し、この全体のシステムは、デバイス(ノー対応するオブジェクト)を傷つけている時間で検出することができない利用者(学生)サブシステム、またはサブシステム管理者の実験を含める必要があります。しかし、時間の理由により、それはそうすることができます。
システムのGUI
1.ログイン
2.スーパー管理者
3.実験装置の管理者
問題が発生し、解決策
左側のメニュー上の別のボタンの1クリックして、別のインターフェイスと同じURLにジャンプする
ソリューション:異なる別の内部インタフェースを共有し、同じ外枠(左のメニューバーを)達成するために使用、<iframe>のタグ。
2.ブートストラップ・プロジェクトにコピーされたCSSスタイルまたは他のスタイルが、表示されません(スタイル障害)
対策:Webアプリケーションフォルダ内の(私はApache_Tomcatのあった)サーバーをチェックしたプロジェクトは、あなたが使用しているスタイルが含まれています。
3. sevlet 404エラーページのリダイレクトの
解決は、: - 、最も可能性の高いパススタイルを紹介し、それらがページのサーブレット・パスにリダイレクトされているかどうかチェックが間違っている、私はスタイル損失の問題を含めて長い時間(のためにこの問題のため困っています質問のうち)。記事を参照して、絶対パスと相対パスを導入する方法については、「HTML相対パスの絶対パス」。
4. JavaBeanの命名は、凹凸が主導していない属性を
解決します。各変数のsetXXX(でJavaBeansを)とのgetXXX()メソッド、変数名のセット後、または最初の文字は大文字を取得、他の変わらない、覚えています!
例えば:プライベートINT cntNum;それはgetCntNum()とsetCntNum()は、対応する方法です。
5.それ以外の場合は登録機能にジャンプし、着地後の内部ページにアクセスするユーザーを実装する
ソリューション:達成するためにセッションを使用しています。
コード
コードは、参考UserServletそれのために与えられています。
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import bean.UserInfo;
@WebServlet(name="userServlet", urlPatterns="/userServlet")
public class UserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private PreparedStatement ps;
private Connection ct;
private ResultSet rs;
private Statement st;
private String sql;
private String execNum = "0";
private String jumpPage = null;
private final static String url = "jdbc:sqlserver://localhost:1433;databaseName=EquipmentSystem";
private final static String user = "sa";
private final static String password = "sa";
private String prKey;
private List<UserInfo> userList;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected boolean connectDB(){
int flag = 1;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
}catch(Exception e) {
flag = 0;
e.printStackTrace();
}
try {
ct = DriverManager.getConnection(url, user, password);
st = ct.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
}catch(Exception e) {
flag = 0;
e.printStackTrace();
}
return flag == 1 ? true : false;
}
protected void closeDB(){
try {
ct.close();
st.close();
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
protected void insertIntoDB(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
ps = ct.prepareStatement("insert into UserInfo values(?,?,?,?,?,?)");
ps.setString(1, request.getParameter("identify"));
ps.setString(2, request.getParameter("password"));
ps.setString(3, request.getParameter("name"));
ps.setString(4, request.getParameter("teacherid"));
ps.setString(5, request.getParameter("phonenumber"));
ps.setString(6, request.getParameter("userrole"));
execNum = Integer.toString(ps.executeUpdate());
//int t = st.executeUpdate(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
request.setAttribute("javax.servlet.error.exception",e);
request.setAttribute("javax.servlet.error.request_uri",request.getRequestURI());
RequestDispatcher rd=request.getRequestDispatcher("CatchException");
rd.forward(request,response);
}
}
protected void deleteFromDB(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
String t = (String)request.getParameter("primary_key");
if(t != null && !t.equals(""))
sql = sql + "'" + t + "'";
int re = st.executeUpdate(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
request.setAttribute("javax.servlet.error.exception",e);
request.setAttribute("javax.servlet.error.request_uri",request.getRequestURI());
RequestDispatcher rd=request.getRequestDispatcher("CatchException");
rd.forward(request,response);
}
}
protected void selectFromDB(HttpServletRequest request, HttpServletResponse response, int flag)
throws ServletException, IOException, SQLException {
try {
String t = (String)request.getParameter("primary_key");
if(1==flag || (t != null && !t.equals("")))
sql = sql + "'" + t + "'";
rs = st.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rs.last();
int totalCount=rs.getRow();
int totalPage=0;
if(totalCount==0){
totalPage=0;
}else{
totalPage=(int)Math.ceil((double) totalCount/3);
}
String pageCurll=request.getParameter("pageCur");
if(pageCurll==null){
pageCurll="1";
}
int pageCur=Integer.parseInt(pageCurll);
if((pageCur-1)*3>totalCount){
pageCur=pageCur-1;
}
int startIndex=(pageCur-1)*3;
int perPageSize=3;
if(flag==1){
rs.beforeFirst();
}
else{
ps=ct.prepareStatement("select top "+perPageSize+" * from UserInfo where user_id not in " +
"(select top "+startIndex+" user_id from UserInfo)");
rs=ps.executeQuery();
}
while(rs.next()){
execNum = "1";
UserInfo uinfo = new UserInfo();
uinfo.setPassword(rs.getString("password"));
uinfo.setPhoneNumber(rs.getString("phone_num"));
uinfo.setSno(rs.getString("sno"));
uinfo.setUserId(rs.getString("user_id"));
uinfo.setUserName(rs.getString("user_name"));
uinfo.setUserRole(rs.getString("user_role"));
userList.add(uinfo);
}
request.setAttribute("totalCount",totalCount);
request.setAttribute("totalPage",totalPage);
request.setAttribute("pageCur",pageCur);
}
protected void updateOnDB(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
ps = ct.prepareStatement(sql);
ps.setString(1, request.getParameter("password"));
ps.setString(2, request.getParameter("name"));
ps.setString(3, request.getParameter("teacherid"));
ps.setString(4, request.getParameter("phonenumber"));
ps.setString(5, request.getParameter("userrole"));
ps.setString(6, request.getParameter("identify"));
int t = ps.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
request.setAttribute("javax.servlet.error.exception",e);
request.setAttribute("javax.servlet.error.request_uri",request.getRequestURI());
RequestDispatcher rd=request.getRequestDispatcher("CatchException");
rd.forward(request,response);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
connectDB();
String t1 = request.getParameter("sql[0]"), t2 = request.getParameter("sql[1]");
sql = (t1!=null) ? t1 : t2;
if(sql == null)
sql = "select * from UserInfo";
int flag = (t1!=null) ? 1 : 0;
userList = new ArrayList<UserInfo>();
//PrintWriter pw = response.getWriter();
String temp [] = sql.split(" ");
if(temp[0].equals("select")){
this.jumpPage = "/SuperAdmin/superAdminSelect.jsp";
try {
selectFromDB(request, response, flag);
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
else if(temp[0].equals("insert")){
//pw.write("insert!");
this.jumpPage = "/SuperAdmin/superAdminInsert.jsp";
insertIntoDB(request, response);
}
else if(temp[0].equals("delete")){
this.jumpPage = "/SuperAdmin/superAdminSelect.jsp";
deleteFromDB(request, response);
}
else if(temp[0].equals("update")){
this.jumpPage = "/SuperAdmin/superAdminUpdate.jsp";
updateOnDB(request, response);
}
closeDB();
if(execNum!=null && !execNum.equals("0"))
request.setAttribute("execNum", execNum);
request.setAttribute("UserInfo", userList);
RequestDispatcher dis = request.getRequestDispatcher(jumpPage);
dis.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}