日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

结对开发石家庄地铁系统

發布時間:2025/3/15 windows 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 结对开发石家庄地铁系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我和袁鵬一組,代碼如下

util層的代碼是:

package util;import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;/*** 數據庫連接工具* @author YP*/ public class Util {public static String db_url = "jdbc:mysql://localhost:3306/test";public static String db_user = "root";public static String db_pass = "zxh521+.";public static Connection getConnection () {Connection connection = null; try {Class.forName("com.mysql.jdbc.Driver");connection = DriverManager.getConnection(db_url, db_user, db_pass);} catch (Exception e) {e.printStackTrace();}return connection;}/*** 關閉連接* @param state* @param conn*/public static void close (Statement state, Connection conn) {if (state != null) {try {state.close();} catch (SQLException e) {e.printStackTrace();}} if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}public static void close (ResultSet rs, Statement state, Connection conn) {if (rs != null) {try {rs.close();} catch (SQLException e) {e.printStackTrace();}}if (state != null) {try {state.close();} catch (SQLException e) {e.printStackTrace();}}if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}} }

bean層代碼為:

package bean;public class Subway {private int id;private int number;private String name;private String message;public int getId() {return id;}public void setId(int id) {this.id = id;}public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public Subway(int id,int number,String name,String message){this.id=id;this.name=name;this.number=number;this.message=message;}public Subway(int number,String name,String message){this.name=name;this.number=number;this.message=message;} }

Dao層代碼為:

package dao;import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List;import bean.Subway; import util.Util;public class SDao {/*** 查詢線路信息*/public List<Subway> getSubwayByNumber(int number) {String sql = "select * from subway where number = '" + number + "'";List<Subway> list = new ArrayList<>();Connection conn = Util.getConnection();Statement state = null;ResultSet rs = null;try {state = conn.createStatement();rs = state.executeQuery(sql);Subway subway = null;while (rs.next()) {int id = rs.getInt("id");String name = rs.getString("name");String message = rs.getString("message");subway = new Subway(id, number, name, message);list.add(subway);}} catch (SQLException e) {e.printStackTrace();} finally {Util.close(rs, state, conn);} return list;}/*** 通過name得到地鐵信息*/public Subway getSubwayByName(String name) {String sql = "select * from subway where name ='" + name + "'";Connection conn = Util.getConnection();Statement state = null;ResultSet rs = null;Subway subway = null;try {state = conn.createStatement();rs = state.executeQuery(sql);while (rs.next()) {int id = Integer.parseInt(rs.getString("id"));int number = Integer.parseInt(rs.getString("number"));String message = rs.getString("message");subway = new Subway(id, number, name, message);}} catch (Exception e) {e.printStackTrace();} finally {Util.close(rs, state, conn);}return subway;}/*** 查詢路線*/@SuppressWarnings("null")public List<Subway> search(String name1,String name2) {List<Subway> list = new ArrayList<Subway>();Connection conn = Util.getConnection();Statement state1 = null;Statement state2 = null;Statement state3 = null;Statement state4 = null;Statement state5 = null;ResultSet rs1 = null;ResultSet rs2 = null;ResultSet rs3 = null;ResultSet rs4 = null;ResultSet rs5 = null;try {Subway subway1 = null;Subway subway2 = null;String sql1 = "select * from subway where name ='" + name1 + "'";String sql2 = "select * from subway where name ='" + name2 + "'";state1 = conn.createStatement();rs1 = state1.executeQuery(sql1);while (rs1.next()) {int id1 = rs1.getInt("id");int number1 = rs1.getInt("number");String message1 = rs1.getString("message");subway1 = new Subway(id1, number1, name1, message1);}state2 = conn.createStatement();rs2 = state2.executeQuery(sql2);while (rs2.next()) {int id2 = rs2.getInt("id");int number2 = rs2.getInt("number");String message2 = rs2.getString("message");subway2 = new Subway(id2, number2, name2, message2);}if(subway1.getNumber()==subway2.getNumber()){Subway subway3 = null;if(subway1.getId()<subway2.getId()){String sql3 = "select * from subway where id between '" + subway1.getId() + "' and '" + subway2.getId() + "'";state3 = conn.createStatement();rs3 = state3.executeQuery(sql3);while (rs3.next()) {int id3 = rs3.getInt("id");int number3 = rs3.getInt("number");String name3 = rs3.getString("name");String message3 = rs3.getString("message");subway3 = new Subway(id3, number3, name3, message3);list.add(subway3);}} else if(subway1.getId()>subway2.getId()){String sql3 = "select * from subway where id between '" + subway2.getId() + "' and '" + subway1.getId() + "'";rs3 = state3.executeQuery(sql3);while (rs3.next()) {int id3 = Integer.parseInt(rs3.getString("id"));int number3 = Integer.parseInt(rs3.getString("number"));String name3 = rs3.getString("name");String message3 = rs3.getString("message");subway3 = new Subway(id3, number3, name3, message3);list.add(subway3);}} }else {String sql4 = "select * from subway where number = '" + subway1.getNumber() + "'";String sql5 = "select * from subway where number = '" + subway2.getNumber() + "'";state4 = conn.createStatement();rs4 = state3.executeQuery(sql4);}} catch (Exception e) {e.printStackTrace();} finally {Util.close(rs1, state1, conn);Util.close(rs2, state2, conn);Util.close(rs3, state3, conn);}return list;} }

servlet層的代碼為:

package servlet;import java.io.IOException; import java.util.ArrayList; import java.util.List;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.Subway; import dao.SDao;@WebServlet("/Sservlet") public class Sservlet extends HttpServlet {private static final long serialVersionUID = 1L;SDao dao = new SDao();/*** 方法選擇*/protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("utf-8");String method = req.getParameter("method");if ("getsubwaybynumber".equals(method)) {getSubwayByNumber(req, resp);} else if ("getsubwaybyname".equals(method)) {getSubwayByName(req, resp);}}/*** 查詢線路信息*/private void getSubwayByNumber(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{req.setCharacterEncoding("utf-8");int number = Integer.parseInt(req.getParameter("number"));List<Subway> subway = dao.getSubwayByNumber(number);if(subway == null) {req.setAttribute("message", "無此路線!");req.getRequestDispatcher("road.jsp").forward(req,resp);} else {req.setAttribute("subway", subway);req.getRequestDispatcher("roadlist.jsp").forward(req,resp);}}/*** 通過name得到Subway*/private void getSubwayByName(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{req.setCharacterEncoding("utf-8");String name1 = req.getParameter("name1");String name2 = req.getParameter("name2");Subway subway1 = dao.getSubwayByName(name1);Subway subway2 = dao.getSubwayByName(name2);List<Subway> subway3=new ArrayList<>();subway3 = dao.search(name1,name2);int m = 0;if(subway1.getNumber()==subway2.getNumber()){m = Math.abs(subway1.getId()-subway2.getId());}if(subway1.getNumber()!=subway2.getNumber()){}req.setAttribute("subway1", subway1);req.setAttribute("subway2", subway2);req.setAttribute("m", m);req.setAttribute("subway3", subway3);req.getRequestDispatcher("searchlist.jsp").forward(req,resp);} }

現在的代碼只能完成單條線路和一次換車,無法完成多次換車。

轉載于:https://www.cnblogs.com/zhaoxinhui/p/10649656.html

總結

以上是生活随笔為你收集整理的结对开发石家庄地铁系统的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。