科室的下拉列表(mysql)
来源:互联网 发布:软件制作器 编辑:程序博客网 时间:2024/04/30 15:12
连接数据库(2)
上一篇我们建好了数据库,这篇来访问数据库。
数据库的链接 如何创建数据库
1、在工程里导入jdbc的驱动包
2、测试与AS的连接
这里可能会出现连不上问题,连接真机使用本地IP,连接模拟器使用10.0.2.2(在虚拟机的WIFI设置代理10.0.3.2)去访问。还有就是网上有人说sdk16以上可能会找不到jar包。
3、使用jdbc访问数据库
第一步,加载mysql数据库的驱动
Class.forName(“com.mysql.jdbc.Driver”);
第二步,与mysql建立连接,返回一个Connection对象
Connection connect = DriverManager.getConnection(“jdbc:mysql://本地IP:3306/Department_DataBase?useUnicode=true&characterEncoding=UTF-8”,”root”, “123456”);
这里传入你的IP,mysql的用户和密码,还有表名Department_DataBase
第三步,拿到Statement对象,它为一条Sql语句生成执行计划,就是用来执行sql语句的,然后会返回一个结果集给你去拿数据
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery(“select * from BigDepartment”);
使用next()访问一行一行的数据,循环拿到一列的数据即可
rs.getString(1),这里的参数1代表第一列,依次类推,或者传入表里的列名也可以rs.getString(“DBID”);
public static List<String> queryBName(String name) { ResultSet rs2 = null; List<String> myList = null; // TODO Auto-generated method stub try { Class.forName("com.mysql.jdbc.Driver"); // 加载MYSQL JDBC驱动程序 // Class.forName("org.gjt.mm.mysql.Driver"); System.out.println("Success loadingMysql Driver!"); } catch (Exception e) { System.out.print("Error loading Mysql Driver!"); e.printStackTrace(); } try { // Connection connect = DriverManager.getConnection( // "jdbc:mysql://localhost:3306/test","root"," yourpassword"); Connection connect = DriverManager .getConnection( "jdbc:mysql://本地IP:3306/Department_DataBase?useUnicode=true&characterEncoding=UTF-8", "root", "123456"); // 连接URL为 jdbc:mysql//服务器地址/数据库名 ,后面的2个参数分别是你数据库的登录用户名和密码 System.out.println("Success connect Mysql server!"); Statement stmt = connect.createStatement(); Statement stmt2 = connect.createStatement(); // ResultSet rs = stmt.executeQuery("select * from BigDepartment"); String s = "select * from BigDepartment where DBigDepart =" + "'" + name + "'"; rs2 = stmt2.executeQuery(s); ResultSet rs = null; while (rs2.next()) { System.out.print("你所查的大科为::" + rs2.getString(2)); System.out.print(" "); System.out.print("所对应的大科ID " + rs2.getString(1)); System.out.print(" "); System.out.println(); String bstr = rs2.getString(1); String ss = "select * from Department where DBDID =" + "'" + bstr + "'"; rs = stmt.executeQuery(ss); } System.out.println(); System.out.println("您所选择的大科包括的下拉列表即科室为:"); System.out.println(); List<String> list = new ArrayList<>(); while (rs.next()) {// System.out.println("您所选择的大科包括的下拉列表即科室为:" + rs.getString(2)); System.out.println(rs.getString(2)); list.add(rs.getString(2)); } System.out.println(list + "22222"); myList = list; } catch (Exception e) { System.out.print("get data error!"); e.printStackTrace(); } return myList; }
第四步,将结果返回给下拉列表,更新数据,下拉列表我用的是网上写好的,链接分享给大家 网上的下拉列表控件分享
我给ViewLeft类添加了一个获取数据的方法
public void setItemData(List<String> list){ if(!items.isEmpty()){ items.clear(); }else{ for(int i = 0;i < list.size();i++){ items.add(i,list.get(i)); } }// items = list; }
把获取到的数据设置给它,在子线程获取数据,在主线程中设置数据给ExpandTabView,添加到ViewLeft上。
bt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { new Thread(new Runnable() { @Override public void run() { final String etstr= et.getText().toString(); final List<String> str = queryBName(etstr); runOnUiThread(new Runnable() { @Override public void run() { viewLeft.setItemData(str); } }); System.out.println(str+"wwwwwwwwww"); } }).start(); Toast.makeText(MyActivity.this,"数据查询完成,请点击下拉列表选择查看",Toast.LENGTH_LONG).show(); } });
项目传送门
- 科室的下拉列表(mysql)
- 展示医院科室的下拉列表(连接数据库数据)
- mysql+php select 下拉列表树的简单实现
- UGUI(十五)下拉列表的封装
- 下拉列表的SelectedIndexChanged
- 好看的下拉列表
- 友情链接的下拉列表
- MVC3的下拉列表
- 下拉列表的样式
- Android的下拉列表
- 下拉列表的使用
- 科室管理系统中,运用百度编辑器(ueditor1_4_3-utf8-jsp)出现的一系列问题!
- 科室登记使用新的提示
- 下拉列表(1)
- 下拉列表(2)
- Spinners(下拉列表)
- 下拉列表 (Spinner)
- 下拉列表联动总结(AJAX下拉列表联动简单示例)(lip009的专栏)
- JSP自定义标签的实现
- solr冷迁移操作步骤
- Json解析转化
- idea 使用maven编译项目时出现源码版本警告的处理方式
- 一、Calcite官方文档翻译--概览
- 科室的下拉列表(mysql)
- RecyclerView打造可拖拽的GridView使用ItemTouchHelper
- Java代码调用存储过程没反应
- spring事务 方法调用内部方法 事务不生效
- python3下使用map()函数返回<map object at 0x00000000038327F0>导致不能直接使用的解决办法
- datatable中的如何让页面上的序号在翻页后自增
- None of the configured nodes are available
- Listener
- oracle一张表的id关联另一张表中的字段