java与mysql的连接,找不到驱动程序

在Class.forName("com.mysql.jdbc.Driver");这个环节老是出现错误,连接不上数据库;
我已经下载好了mysql-connector-java-5.1.17-bin.jar,但是不知道怎么配置环境?(希望能讲述得详细一点);
而且我用了Eclipse导入mysql-connector-java-5.1.17-bin.jar后,可以连接上,但是用记事本编写的时候就是连接不上。
由于某些原因,我要用记事本编写不能用Eclipse
我的程序是这样的
图片说明

出现了这样的错误(用CMD编译和运行时出现的也是一样的错误)
图片说明

5个回答

我改了一下自己的程序,用Eclipse实现了

weixin_44261520
不加糖的白开水 问一下你怎么改的,我有一样的问题
大约一年之前 回复

你没有把驱动包加载到项目中,选中项目,鼠标右键打开build path项,通过添加jar,将下载的驱动包加载进来,再进行部署即可

qq_34270959
qq_34270959 我说了 由于一些原因 我要用记事本编写 在记事本里面连数据库 但是不知道如何导入驱动包
大约 3 年之前 回复

javac -classpath mysql-connector-java-5.1.17-bin.jar mySql.java

qq_34270959
qq_34270959 而且完整的路径也不行
大约 3 年之前 回复
qq_34270959
qq_34270959 我试过了 不行
大约 3 年之前 回复

一般情况下:
如果java 文件和jar 包在同一目录
编译:
D:\wangyu>javac -cp xalan.jar Test.java

执行:
D:\wangyu>java -classpath xalan.jar; Test

如果java文件和jar包不在同一目录
编译:
D:\wangyu>javac -cp d:\wangyu\xalan.jar Test.java
执行:
D:\wangyu>java -classpath d:\wangyu\xalan.jar;d:\wangyu\Test
引用多个jar包时
假设有个程序的启动方法在test.java里
运行Java程序是java test,但是如果要引用其他jar包,网上大多数的方法都是java -classpath xx.jar test
但是jar很多的话,就要一个一个写上去,非常麻烦。而且jar包可能经常变
现在用以下一句就能解决问题,假设jar包都放在lib文件夹里
java -Djava.ext.dirs=lib test

自己看吧,百度的

qq_34270959
qq_34270959 还是出现一样的错误,我早就试过了
大约 3 年之前 回复

网上说放一起就行,
原来也没有试过用记事本连接数据库驱动放在那。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mysql 连接数据库报 找不到驱动程序
package com.wfb; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class DBUtil { private static final String URL = "jdbc.mysql://127.0.0.1:3306/imooc"; private static final String USER = "root"; private static final String PASSWORD = "root"; public static void main(String[] args) throws Exception{ //加载驱动 Class.forName("com.mysql.jdbc.Driver"); //获得数据库的链接 Connection conn = DriverManager.getConnection(URL, USER, PASSWORD); //通过数据库的连接操作数据库,实现增删改查 Statement sta = conn.createStatement(); ResultSet rs = sta.executeQuery("select name from imooc_goddess"); while(rs.next()){ System.out.println(rs.getString("name")); } } } 这是报的异常 Exception in thread "main" java.sql.SQLException: No suitable driver found for jdbc.mysql://127.0.0.1:3306/imooc at java.sql.DriverManager.getConnection(DriverManager.java:602) at java.sql.DriverManager.getConnection(DriverManager.java:185) at com.wfb.DBUtil.main(DBUtil.java:22) mysql-connector-java-5.1.18-bin.jar已经附加成功了 之前的web 项目可以 现在单独的练习 一直出现问题 数据库 以及表名都没有错误 将驱动加入了:C:\Program Files\Java\jre7\lib\ext中,仍然报错 求大神解答
jsp访问MySQL数据库找不到驱动类
在写jsp访问MySQL数据库的测试页面时出现错误,不知道是不是驱动没有加载好,还是要设置什么数据源,本人新手,现贴出错误信息,帮忙指点一下 严重: Servlet.service() for servlet jsp threw exception [color=red]java.lang.ClassNotFoundException: org.aspectj.lang.Signature[/color] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at org.apache.jsp.index_jsp._jspService(index_jsp.java:69) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445) at java.lang.Thread.run(Thread.java:619)
tomcat 7、8 jndi 找不到mysql驱动
想配置tomcat jndi 可tomcat总是报 找不到mysql驱动com.MySQL.jdbc.Driver 在tomcat lib 中已经放入mysql驱动包 mysql-connector-java-5.1.39.jar 现在是用的最新的版本。 我试过好多个版本都不行。 网上都是说把mysql驱动放tomcat lib下就可以了。 但我这真的不行。。。。我已经想不到办法了。。。 我甚至用压缩软件打开mysql驱动包 包里面的com文件夹复制到了 tomcat-dbcp.jar 内部 还是不行。。。 详细提问地址: http://bbs.csdn.net/topics/391959248
关于”找不到适合JDBC的驱动程序: MySQL80“的问题
用IDEA编程出现的: java.sql.SQLException: No suitable driver found for jdbc:MySQL80://localhost:3306/musiclibary?user=root at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(DriverManager.java:247) at yecheng.music.database.MysqlDB.<init>(MysqlDB.java:31) at yecheng.Server$ServerDataBase.<init>(Server.java:42) at yecheng.Server.main(Server.java:105) 百度之后,添加了jar包,环境变量也改了,该添加的都添加了,但还是出了问题,求教,下面是代码: package yecheng.music.database; import org.json.JSONObject; import yecheng.music.ReadFile; import yecheng.music.fingerprint.Fingerprint; import java.io.File; import java.sql.*; import java.util.HashMap; import java.util.Map; /** * Created by hsyecheng on 2015/6/12. */ @SuppressWarnings("FieldCanBeLocal") public class MysqlDB { private Connection dbConn; private Statement dbStatement; private PreparedStatement insertMusic; private final String driver = "com.mysql.jdbc.Driver"; private final String url = "jdbc:MySQL80://localhost:3306/musiclibary?user=root"; private final String user = "root"; private final String password = "123456"; public MysqlDB() { super(); try { Class.forName(driver); dbConn = DriverManager.getConnection(url, user, password); if(dbConn.isClosed()) throw new Exception("can not open Database"); dbStatement = dbConn.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); dbStatement.setFetchSize(Integer.MIN_VALUE); }catch(Exception e){ e.printStackTrace(); } String exec = "INSERT INTO `musiclibary`.`musicinfo` " + "(`Title`, `Artist`, `Album`, `FileDir`, `InfoDir`) " + "VALUES ( ? , ? , ? , ? , ? );"; try { insertMusic = dbConn.prepareStatement(exec, Statement.RETURN_GENERATED_KEYS); } catch (SQLException e) { e.printStackTrace(); } } public synchronized void insert(String fileDir){ ReadFile readFile = new ReadFile(); try { File file = new File(fileDir); readFile.readFile(file); } catch (Exception e) { e.printStackTrace(); return; } Fingerprint fp = readFile.fingerprint; String Title = readFile.Title; String Artist = readFile.Artist; String Album = readFile.Album; String InfoDir = ""; /*String exec = "INSERT INTO `musiclibary`.`musicinfo` " + "(`Title`, `Artist`, `Album`, `FileDir`, `InfoDir`) " + "VALUES ('" + stringReplace("") + "', '" + stringReplace("") + "', '" + stringReplace("") + "', '" + stringReplace(fileDir) + "','" + stringReplace("") + "');";*/ int id; /*String exec = "INSERT INTO `musiclibary`.`musicinfo` " + "(`Title`, `Artist`, `Album`, `FileDir`, `InfoDir`) " + "VALUES ('?,?,?,?,?);";*/ try { insertMusic.setString(1,Title); insertMusic.setString(2,Artist); insertMusic.setString(3,Album); insertMusic.setString(4, fileDir); insertMusic.setString(5,InfoDir); insertMusic.executeUpdate(); ResultSet rs=insertMusic.getGeneratedKeys(); rs.next(); id = rs.getInt(1); rs.close(); } catch (SQLException e) { System.out.print(e.getSQLState()); e.printStackTrace(); return; } /*int id; ResultSet rs; exec = "select idMusicInfo from `musiclibary`.`musicinfo` " + "where FileDir='" + stringReplace(fileDir) + "';"; try { rs = dbStatement.executeQuery(exec); rs.next(); id = rs.getInt(1); rs.close(); } catch (Exception e) { e.printStackTrace(); return; }*/ StringBuilder buf = new StringBuilder("INSERT INTO `musiclibary`.`hashtable` " + "(`Hash`, `ID`, `Time`) " + "VALUES"); for(Fingerprint.Link link : fp.getLinkList()){ Index.Info info = new Index.Info(id,link); buf.append("(").append(info.hash).append(",").append(info.id).append(",").append(info.time).append("),"); } buf.replace(buf.length()-1,buf.length(),";"); try { dbStatement.execute(buf.toString()); } catch (SQLException e) { System.out.print(e.getSQLState()); e.printStackTrace(); } /*exec = "INSERT INTO `musiclibary`.`hashtable` " + "(`Hash`, `ID`, `Time`) " + "VALUES ('" + stringReplace("") + "', '" + stringReplace("") + "', '" + stringReplace("") + "');"; try { dbStatement.execute(exec); } catch (SQLException e) { System.out.print(e.getSQLState()); e.printStackTrace(); }*/ } @SuppressWarnings("unused") public synchronized ResultSet search(int hash){ String exec = "SELECT * from `musiclibary`.`hashtable` WHERE Hash="+ hash + ";"; ResultSet resultSet; try { resultSet = dbStatement.executeQuery(exec); } catch (SQLException e) { e.printStackTrace(); return null; } return resultSet; } public synchronized ResultSet searchAll(int[] hash){ int len = hash.length; String tmp1 = "SELECT * FROM `musiclibary`.`hashtable` WHERE Hash in("; StringBuilder exec = new StringBuilder(); exec.append(tmp1); for(int i = 0; i < len; i ++){ exec.append(hash[i]).append(","); } len = exec.length(); exec.replace(len - 1, len, ");"); ResultSet resultSet; try { resultSet = dbStatement.executeQuery(exec.toString()); } catch (SQLException e) { e.printStackTrace(); return null; } return resultSet; } public synchronized ResultSet listAll(){ String exec = "SELECT * FROM `musiclibary`.`hashtable`"; ResultSet resultSet; try { resultSet = dbStatement.executeQuery(exec); } catch (SQLException e) { e.printStackTrace(); return null; } return resultSet; } public synchronized JSONObject getByID(int id){ String exec = "SELECT * FROM `musiclibary`.`musicinfo` WHERE idMusicInfo=" + id; ResultSet resultSet; try { resultSet = dbStatement.executeQuery(exec); } catch (SQLException e) { e.printStackTrace(); return null; } Map<String,String> map = new HashMap<>(); try { while (resultSet.next()){ String Title = resultSet.getString(2); String Artist = resultSet.getString(3); String Album = resultSet.getString(4); map.put("Title",Title); map.put("Artist",Artist); map.put("Album",Album); } } catch (SQLException e) { e.printStackTrace(); return null; } return new JSONObject(map); } }
Java Web连接MySql数据库,修改数据库连接类中的用户名和密码没有效果?
现在在做一个项目,其中编写了数据库连接及操作的类。 1、ConnDB类。 package com.wgh.tools; import java.io.InputStream; //导入java.io.InputStream类 import java.sql.*; //导入java.sql包中的所有类 import java.util.Properties; //导入java.util.Properties类 public class ConnDB { public Connection conn = null; // 声明Connection对象的实例 public Statement stmt = null; // 声明Statement对象的实例 public ResultSet rs = null; // 声明ResultSet对象的实例 //private static String propFileName = "connDB.properties"; // 指定资源文件保存的位置 //private static Properties prop = new Properties(); // 创建并实例化Properties对象的实例 private static String dbClassName = "com.mysql.jdbc.Driver"; // 定义保存数据库驱动的变量 private static String dbUrl = "jdbc:mysql://127.0.0.1:3306/db_9griddiary?user=root&password=&useUnicode=true&characterEncoding=utf8"; // public ConnDB() { // 构造方法 // try { // 捕捉异常 // // 将Properties文件读取到InputStream对象中 // InputStream in = getClass().getResourceAsStream(propFileName); // prop.load(in); // 通过输入流对象加载Properties文件 // dbClassName = prop.getProperty("DB_CLASS_NAME"); // 获取数据库驱动 // // 获取连接的URL // dbUrl = prop.getProperty("DB_URL", dbUrl); // } catch (Exception e) { // e.printStackTrace(); // 输出异常信息 // } // } /** * 功能:获取连接的语句 * * @return */ public static Connection getConnection() { Connection conn = null; try { // 连接数据库时可能发生异常因此需要捕捉该异常 Class.forName(dbClassName).newInstance(); // 装载数据库驱动 conn = DriverManager.getConnection(dbUrl); // 建立与数据库URL中定义的数据库的连接 } catch (Exception ee) { ee.printStackTrace(); // 输出异常信息 } if (conn == null) { System.err .println("警告: DbConnectionManager.getConnection() 获得数据库链接失败.\r\n\r\n链接类型:" + dbClassName + "\r\n链接位置:" + dbUrl); // 在控制台上输出提示信息 } return conn; // 返回数据库连接对象 } /* * 功能:执行查询语句 */ public ResultSet executeQuery(String sql) { try { // 捕捉异常 conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); rs = stmt.executeQuery(sql); } catch (SQLException ex) { System.err.println(ex.getMessage()); // 输出异常信息 } return rs; // 返回结果集对象 } /* * 功能:执行更新操作 */ public int executeUpdate(String sql) { int result = 0; // 定义保存返回值的变量 try { // 捕捉异常 conn = getConnection(); // 调用getConnection()方法构造Connection对象的一个实例conn stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); result = stmt.executeUpdate(sql); // 执行更新操作 } catch (SQLException ex) { result = 0; // 将保存返回值的变量赋值为0 } return result; // 返回保存返回值的变量 } /* * 功能:关闭数据库的连接 */ public void close() { try { // 捕捉异常 if (rs != null) { // 当ResultSet对象的实例rs不为空时 rs.close(); // 关闭ResultSet对象 } if (stmt != null) { // 当Statement对象的实例stmt不为空时 stmt.close(); // 关闭Statement对象 } if (conn != null) { // 当Connection对象的实例conn不为空时 conn.close(); // 关闭Connection对象 } } catch (Exception e) { e.printStackTrace(System.err); // 输出异常信息 } } } 第一次连接成功。 第二次为什么无论把这个类中的用户名和密码修改成什么都能连接上MySql了? 请问这个类中的用户名和密码有用吗? 那在哪儿修改用户名和密码后就连接不上Mysql了?
Java WEB 连接数据库的登录界面失败?
使用Eclipse做登陆界面,连接MySQL 8.0,测试过连接数据库应该是成功的,可能是struts配置有问题,新手不知道问题出在哪里,请帮忙看一下代码,我标注几个我可能出问题又不知道怎么改的地方 //login.jsp //此处可能是表单中form的action属性有问题? ``` <%@ page contentType="text/html; charset=gb2312" language="java"%> <html> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <head> <title>图书馆管理系统</title> <link href="CSS/style.css" rel="stylesheet"> <script language="javascript"> function check(form){ if (form.name.value==""){ alert("请输入用户名称");form.name.focus();return false; } if (form.pwd.value==""){ alert("请输入密码");form.pwd.focus();return false; } } </script> </head> <body> <table width="1000" border="0" align="center" cellpadding="0" cellspacing="0" class="tableBorder"> <tr> <td width="1000" height="545" align="center" background="Images/login.png"> <table width="1000" height="345" aligh="center" ></table> <form name="form1" method="post" action="manager.do?action=login"> <table width="400" height="200" align="left"> <tr> <td height="37" style="width: 128px; "></td> <td height="37" width="50"> 用户名</td> <td height="37" width="150"> <input name="name" type="text" class="logininput" id="name" size="27"> </td> </tr> <tr> <td height="37" style="width: 128px; "></td> <td height="37" width="50"> 密码 </td> <td height="37" width="150"> <input name="pwd" type="text" class="logininput" id="pwd" size="27"> </td> </tr> <tr> <td height="37" style="width: 128px; "></td> <td height="37" width="50"></td> <td height="37" width="200"> <input name="Submit" type="submit" class="btn_grey" value="确定" onClick="return check(form1)"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="Submit3" type="reset" class="btn_grey" value="重置"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="Submit2" type="button" class="btn_grey" value="关闭" onClick="window.close();"> </td> </tr> </table> </form> </td> <tr> <td align="center" height="50" bgcolor="#3A3A3A" class="word_login">CopyRight &copy; 2019版权所有 xx图书馆<br> </td> </tr> </table> </body> </html> ``` //Manager.java ``` package com.action; import org.apache.struts.action.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.actionForm.ManagerForm; import com.dao.ManagerDAO; import javax.servlet.http.HttpSession; public class Manager extends Action { private ManagerDAO managerDAO = null; public Manager() { this.managerDAO = new ManagerDAO(); } public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { String action = request.getParameter("action"); // System.out.println("获取的查询字符串:" + action); if (action == null || "".equals(action)) { return mapping.findForward("error"); } else if ("login".equals(action)) { return managerLogin(mapping, form, request, response); } request.setAttribute("error", "操作失败!"); return mapping.findForward("error"); } // 管理员身份验证 public ActionForward managerLogin(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { ManagerForm managerForm = (ManagerForm) form; //将接收到的表单信息强制转换成ActionForm类型 managerForm.setAd_name(managerForm.getAd_name()); managerForm.setAd_pwd(managerForm.getAd_pwd()); int ret = managerDAO.checkManager(managerForm); System.out.print("验证结果ret的值:" + ret); if (ret == 1) { //将登录到系统的管理员名称保存到session HttpSession session = request.getSession(); session.setAttribute("manager", managerForm.getAd_name()); return mapping.findForward("managerLoginok"); } else { request.setAttribute("error", "您输入的管理员名称或密码错误!"); return mapping.findForward("error"); } } } ``` //ManagerForm ``` package com.actionForm; import org.apache.struts.action.ActionForm; public class ManagerForm extends ActionForm { private int ad_id; private String ad_name; private String ad_pwd; public ManagerForm() { } public int getAd_id() { return ad_id; } public void setAd_id(int ad_id) { this.ad_id=ad_id; } public String getAd_name() { return ad_name; } public void setAd_name(String ad_name) { this.ad_name=ad_name; } public String getAd_pwd() { return ad_pwd; } public void setAd_pwd(String ad_pwd) { this.ad_pwd=ad_pwd; } } ``` //ManagerDAO ``` package com.dao; import com.core.ChStr; import com.core.ConnDB; import java.util.*; import com.actionForm.ManagerForm; import java.sql.*; public class ManagerDAO { private ConnDB conn = new ConnDB(); //管理员身份验证 public int checkManager(ManagerForm managerForm) { int flag = 0; ChStr chStr=new ChStr(); String sql = "SELECT * FROM Ad_info where ad_name='" + chStr.filterStr(managerForm.getAd_name()) + "'"; ResultSet rs = conn.executeQuery(sql); try { if (rs.next()) { String pwd = chStr.filterStr(managerForm.getAd_pwd()); //获取输入的密码并过滤输入字符串中的危险字符 if (pwd.equals(rs.getString(3))) { flag = 1; } else { flag = 0; } }else{ flag = 0; } } catch (SQLException ex) { flag = 0; }finally{ conn.close(); } return flag; } } ``` //ConnDB ``` package com.core; import java.io.InputStream; import java.sql.*; import java.util.Properties; public class ConnDB { public Connection conn=null; public Statement stmt=null; public ResultSet rs=null; private static String propFileName="/com/connDB.properties"; private static Properties prop=new Properties(); private static String dbClassName="com.mysql.cj.jdbc.Driver"; private static String dbUrl="jdbc:mysql://223.80.110.29:3306/sys_test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL"; private static String dbUserName="root"; private static String dbPassword=""; //加载资源文件 public ConnDB() { try { InputStream in=getClass().getResourceAsStream(propFileName); prop.load(in); dbClassName=prop.getProperty("DB_CLASS_NAME","com.mysql.cj.jdbc.Driver"); dbUrl=prop.getProperty("DB_URL","jdbc:mysql://localhost:3306/db_librarysys?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL"); dbUserName=prop.getProperty("DB_USERNAME"); dbPassword=prop.getProperty("DB_PASSWORD"); } catch(Exception e){ e.printStackTrace(); } } public static Connection getConnection() { Connection conn=null; try { //加载数据库驱动 Class.forName(dbClassName); conn=DriverManager.getConnection(dbUrl,dbUserName,dbPassword); } catch(Exception ee) { ee.printStackTrace(); } if(conn==null) { System.err.println("警告:DbConnectionManager.getConnection()获得数据库链接失败.\r\n\r\n链接类型:"+dbClassName+"\r\n链接位置:"+dbUrl); } return conn; } //执行查询语句 public ResultSet executeQuery(String sql) { try { conn=getConnection(); stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); /*ResultSet.CONCUR_READ_ONLY 不能用结果集更新数据库中的表 ResultSet.TYPE_SCROLL_INSENSITIVE 结果集的游标可以上下移动,当数据库变化时,当前结果集不变。 */ rs=stmt.executeQuery(sql); } catch(SQLException ex){ System.err.println(ex.getMessage()); } return rs; } //执行更新操作 添加修改删除数据 public int executeUpdate(String sql) { int result=0;//更新的行数 try { conn=getConnection(); stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); result=stmt.executeUpdate(sql); }catch(SQLException ex) { result=0; } return result; } public void close() { try { if(rs!=null) { rs.close(); } if(stmt!=null) { stmt.close(); } if(conn!=null) { conn.close(); } }catch(Exception e) { e.printStackTrace(System.err); } } } ``` //struts-config ``` <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"> <struts-config> <form-beans> <form-bean name="managerForm" type="com.actionForm.ManagerForm" /> <form-bean name="ParameterForm" type="com.actionForm.ParameterForm" /> </form-beans> <action-mappings type="org.apache.struts.action.ActionMapping"> <action name="managerForm" path="/manager" scope="request" type="com.action.Manager" validate="true"> <forward name="managerLoginok" path="/main.jsp" /> <forward name="error" path="/error.jsp" /> </action> <action name="ParameterForm" path="/parameter" scope="request" type="com.action.Parameter" validate="true"> <forward name="error" path="/error.jsp" /> <forward name="parametermodify" path="/parameter_ok.jsp?para=2" /> <forward name="parametermodifyQuery" path="/parameter_modify.jsp" /> </action> </action-mappings> <message-resources parameter="com.wgh.struts.ApplicationResources" /> </struts-config> ```
配置和加载数据库驱动程序
配置路径: 变量名: CLASSPATH 变量设置: .;C:\mysql-connector-java-5.1.37-bin.jar 这是加载驱动程序: public class Connection{ public static final String ZHEN="com.mysql.jdbc.Driver"; public static void main(String args[]){ try{ Class.forName(ZHEN); }catch(ClassNotFoundException e){ e.printStackTrace(); }; }; }; 这是错误: D:\chu>javac Connection.java Connection.java:7: 错误: 找不到符号 Class.forName(ZHEN); ^ 符号: 方法 forName(String) 位置: 类 Class 1 个错误
对于java操作mysql数据库删除一行的问题;本人菜鸟跪求
package org.demo.test; import java.sql.*; public class SimpleConnectMysqlDemo { public static void main(String[] args) { // 驱动程序名 String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名scutcs String url = "jdbc:mysql://127.0.0.1:3306/school?characterEncoding=utf-8"; // MySQL配置时的用户名 String user = "root"; // MySQL配置时的密码 String password = "root"; // 获取当前环境编码 // System.out.println(Charset.defaultCharset()); try { Class.forName(driver); // 获取数据库连接 Connection conn = DriverManager.getConnection(url, user, password); if (!conn.isClosed()) System.out.println("Succeeded connecting to the Database!"); // statement用来执行SQL语句 Statement statement = conn.createStatement(); String sql1 = "select id,username,birthday,image from user"; String hehe ="insert into user( id,username,birthday,image) " + "values(NULL,'张三丰','2011/1/1','190.12')"; //String sql2="delete * from table where name='name'"; //String haha="delete * from school where name='张三丰'"; int tag = statement.executeUpdate(hehe); // 结果集 ResultSet rs = statement.executeQuery(sql1); while (rs.next()) { System.out.println(rs.getString("id") + "\t" + rs.getString("username")+ "\t" + rs.getString("birthday")); } // 关闭数据库,释放资源 close(rs, statement, conn); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } /** * 释放资源,释放资源的顺序应该按照释放结果集,释放Statement,释放数据库连接的顺序并且,为了不占用太多的资源, * 数据库连接建立到释放的时间应该尽量短。 * * @param rs * @param st * @param con */ public static void close(ResultSet rs, Statement st, Connection con) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (st != null) { try { st.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con != null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
centOS下执行.jar文件 找不到数据库的驱动类
我在idea14下写了一个java类,该类如下: public class Connectdb { public static void main(String[] args) { String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://127.0.0.1:3306/test"; String user = "root"; String password = "1234"; try { Class.forName(driver); Connection conn = DriverManager.getConnection(url, user, password); System.out.println("connect"); } catch (Exception e) { e.printStackTrace(); } } } 然后利用idea,生成.jar文件,最后目录结构如下:testdb_jar文件夹下有一文件夹lib和testdb.jar文件,然后lib下放的是mysql的驱动jar包。 然后在windows下利用命令:java -jar testdb.jar 是可以执行的,连接上了数据库 但是同样的,在centOS 7下,出现如下错误: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at Connectdb.main(Connectdb.java:15) 希望大神能帮我解决下,谢谢啦!
jdbc连接数据库的com.mysql.jdbc.CommunicationsException问题
我使用jdbc连接数据库,连接不上,上网搜了很多,有人说是数据库请求超时问题,也有说是数据库url,账号或者密码配置错误,我检查了都没有问题。还有一点奇怪的是,我用jdbc-odbc桥连接又可以连上数据库,用可视化工具也可以连上,但是用jdbc方式连接不上。。。我现在想着应该是哪里的配置有问题,请教各位大神,看看有谁知道或者遇到过,谢谢大家了 这是我的程序 ``` public static void main(String[] args) { Connection ct = null; Statement sm = null; ResultSet rs = null; try { //1、加载驱动(作用是把需要的驱动程序加入内存) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //2、得到连接(指定连接到哪个数据源) //如果配置数据源选择的是Windows nt验证方式,则不需要用户名和密码 ct = DriverManager.getConnection("jdbc:odbc:MyTest", "root", "root"); //3、创建Statement或者PreparedStatement[区别] //Statement用处是,用于发送sql语句 sm = ct.createStatement(); //4、执行(crud、备份数据库、删除数据库......) //查询,显示所有部门信息 //ResultSet结果集,可以理解成一个表行的结果集 rs = sm.executeQuery("select * from dept"); //因为rs指向结果集的第一行的前一行, //循环取出 while (rs.next()) { int deptno = rs.getInt(1); String dname = rs.getString(2); String loc = rs.getString(3); System.out.println(deptno+" "+dname+" "+loc); } } catch(Exception e) { e.printStackTrace(); } finally { //关闭资源 //关闭顺序是谁后创建谁先关闭 try { //为了程序健壮 if (rs != null) { rs.close(); } if (sm != null) { sm.close(); } if (ct != null) { ct.close(); } } catch (SQLException e) { e.printStackTrace(); } } } ``` 这些是报的异常 ``` com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.SocketException MESSAGE: Permission denied: recv failed STACKTRACE: java.net.SocketException: Permission denied: recv failed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:152) at java.net.SocketInputStream.read(SocketInputStream.java:122) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:105) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:148) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:176) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1899) at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:481) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:964) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2544) at com.mysql.jdbc.Connection.<init>(Connection.java:1474) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:264) at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:146) at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:195) at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:184) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:200) at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1086) at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1073) at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:44) at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1810) at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) ** END NESTED EXCEPTION ** Last packet sent to the server was 0 ms ago. at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:552) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:964) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2544) at com.mysql.jdbc.Connection.<init>(Connection.java:1474) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:264) at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:146) at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:195) at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:184) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:200) at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1086) at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1073) at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:44) at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1810) at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648) ```
为什么jav用jdbc连接数据库找不到列。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbeTest { public static void main(String[] args) throws SQLException{ //1.注册驱动 DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //2.获取连接 Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/Mysql", "root", "362324FJF"); //3.得到代表sql语句的对象 Statement stat = conn.createStatement(); //4.执行语句 ResultSet rs = stat.executeQuery("select * from user"); while(rs.next()){ System.out.println(rs.getObject("id")); System.out.println(rs.getObject("salary")); System.out.println(rs.getObject("age")); } rs.close(); stat.close(); conn.close(); } } ``` 我的数据库有创建user表 select * from user;出来的结果是 id salary age 1 2 3 4 8 6
springboot+sybase数据库
使用springboot+jpa+多数据源连接sybase和mysql数据库,但一直报一个错是找不到sybase的驱动:java.lang.ClassNotFoundException: =com.sybase.jdbc3.jdbc.SybDriver,通过lib目录下的jconn3d已经导入连接包了。
JSP+myeclipse+mysql连接不到数据库
第一次连接数据库,jar包导入了,驱动也配置了,还是报错!![图片说明](https://img-ask.csdn.net/upload/201706/16/1497605612_541849.png)
Java web报错,Unknown database 'testdb'
在运行jsp插入数据一直报错Unknown database 'testdb',Mysql是8.0的,试过其他办法都没有用。页面报500错误 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>添加图书信息</title> </head> <body> <p>请输入图书信息</p> ${message}<br> <form action="addBook" method="post"> 书号:<input type="text" name="isbn"/><br> 书名:<input type="text" name="title"/><br> 价格:<input type="text" name="price"/><br> <input type="submit" value="确定"/><input type="reset" value="重置"/> </form> </body> </html> ``` ``` ``` package servlet; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; 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 com.mysql.jdbc.Statement; @WebServlet("/addBook") public class BookServlet extends HttpServlet { private static final long serialVersionUID = 1L; Connection dbconn = null; @Override public void init() { try { Class.forName("com.mysql.cj.jdbc.Driver"); dbconn = DriverManager.getConnection( "jdbc:mysql://127.0.0.1:3306/testDB?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true", "root", "123456"); } catch (ClassNotFoundException el) { getServletContext().log("驱动程序类找不到"); } catch (SQLException e2) { System.out.println(e2); } } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String isbn = request.getParameter("isbn"); String title = request.getParameter("title"); float price = Float.parseFloat(request.getParameter("price")); String message = ""; try { String sql = "INSERT INTO books (isbn,title,price) VALUES(?,?,?)"; PreparedStatement pstmt = dbconn.prepareStatement(sql); pstmt.setString(1, isbn); pstmt.setString(2, title); pstmt.setFloat(3, price); int num = pstmt.executeUpdate(); if (num == 1) { message = "插入记录成功"; } else { message = "插入记录失败"; } request.setAttribute("message", message); request.getRequestDispatcher("jsp/add-book.jsp").forward(request, response); } catch (SQLException e) { message = e.getMessage(); request.setAttribute("message", message); request.getRequestDispatcher("jsp/add-book.jsp").forward(request, response); } } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub super.doGet(req, resp); } } ``` ``` <?xml version="1.0" encoding="UTF-8"?> <Context reloadable = "true"> <Resource name="jdbc/testDB" type="javax.sql.DataSource" maxActive="4" maxIdle="2" username="root" password="123456" maxwait="5000" driverClassName="com.mysql.cj.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/testdb?useSLL=true&amp;useUnicode=true&amp;allowPublicKeyRetrieval=true;characterEncoding=utf-8" /> </Context> ``
用jsp写的表单用户登录页面,访问mysql数据库时候 出错 ,如下图
在处理登录的时候为什么有时候出现500错误,有时候又出现找不到数据库连接,我用得mysql数据库,驱动程序也添加了的,求大神指教一下啊! ![登录页面![登录处理错误页面![注册页面![注册处理错误页面](https://img-ask.csdn.net/upload/201505/20/1432088914_125244.jpg)](https://img-ask.csdn.net/upload/201505/20/1432088899_672024.jpg)](https://img-ask.csdn.net/upload/201505/20/1432088869_715910.jpg)](https://img-ask.csdn.net/upload/201505/20/1432088840_415605.jpg)
我要疯了,写个DBUTils连接池这么难?调用配置文件测试连接报noullpointerException
如题,初学者的我想写个DBUTils连接池却接连报错"noullpointException",我用断点 调试发现是Class.forname(driverClass)里的数据是noull 我到网上找答案,都说是mysql驱动包没放对,我又另外找教程然后老老实实照着教程做,但是还是这个问题。 我把我的配置贴一下,请各位指出错误: 这是我的工程目录 ![图片说明](https://img-ask.csdn.net/upload/201906/25/1561452160_591850.png) 这是我的配置文件 ``` url=jdbc:mysql://localhost:3306/mybase user=root password=123 driverClass=com.mysql.jdbc.Driver ``` 把工具类也贴一下吧 ``` package com.study_01; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; public class JDBCTest { //定义全局变量 private static String url = "jdbc:mysql://localhost:3306/mybase"; private static String user = "root"; private static String password = "123"; private static String driverClass = "com.mysql.jdbc.Driver"; //读取配置文件内容,放在静态代码块中就行,因为只需要加载一次就可以了 static{ try{ Properties props = new Properties(); //使用类路径加载的方式读取配置文件 //读取的文件路径要以“/”开头,因为如果使用“.”的话,当部署到服务器上之后就找不到文件了,使用“/”开头会直接定位到工程的src路径下 InputStream in = JDBCTest.class.getResourceAsStream("database.properties"); //加载配置文件 props.load(in); //读取配置文件信息 url = props.getProperty("url"); user = props.getProperty("user"); password = props.getProperty("password"); String driverClass = props.getProperty("driverClass"); //注册驱动程序 Class.forName(driverClass); }catch(Exception e){ e.printStackTrace(); System.out.println("驱动程序注册失败!!!"); } } //获取连接对象Connection public static Connection getConnection(){ try{ return DriverManager.getConnection(url,user,password); }catch(SQLException e){ e.printStackTrace(); //跑出运行时异常 throw new RuntimeException(); } } } ```
Java成绩管理系统无法连接到数据库怎么办?
**做了一个成绩管理系统,程序本身没报错,但是一运行就跳出这个** ![图片说明](https://img-ask.csdn.net/upload/201604/21/1461188600_874322.png) ****然后变成下面这样**** ![图片说明](https://img-ask.csdn.net/upload/201604/21/1461188634_763664.png) **电脑上安装了mysql,创建了数据库student和表student,也导入了jdbc驱动,不知道是哪里出了问题,希望大神帮忙看下** **连接数据库的代码如下:** package Database; import java.io.IOException; import java.io.InputStream; import java.sql.*; import javax.swing.JOptionPane; public class database { static Connection conn =null; private static String username = "root"; private static String password = "1234"; private static String driverClassName = "com.mysql.jdbc.Driver"; private static String url = "jdbc:mysql://localhost:3306/student?useUnicode=true&amp;characterEncoding = UTF-8"; public Connection getConnection(){ try{ Class.forName(driverClassName); conn = DriverManager.getConnection(url,username,password); } catch(Exception e){ e.printStackTrace(); } return conn; } public void closeConnection() throws SQLException{ if(conn!= null){ try{ conn.close(); } catch(SQLException e){ e.printStackTrace(); } } } }
eclipse 下用fat jar插件打包swing生成的jar文件运行提示找不到主类
我用java swing写了一个窗体应用程序,用到了mysql数据库,并且将mysql的jdbc驱动包放在了项目的lib文件夹写,在我将程序用fat jar插件打包后,在命令行下面利用:java -jar +目录\test.jar ,运行正常,而当我直接双击运行生成的jar文件后就提示:Could not find the main class...Program will exit. 请问怎么解决这个问题?
jdbc中加载驱动和注册驱动一样吗?
刚学到mysql数据库,碰到一个题 5. 获取Connection之前,Class.forName()的作用是(A) A 用来注册驱动。 B 用来设置链接数据库的用户名和密码。 C 只能加载驱动类,但无法完成驱动的注册。 D 把java.sql.Driver接口的实现类添加到Connection中。 大概明白作用是注册驱动,那什么叫加载驱动? 分不清
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
进程通信方式总结与盘点
​ 进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。 ​ 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为: 效率低:一次只可操作少量的...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
听说了吗?阿里双11作战室竟1根网线都没有
双11不光是购物狂欢节,更是对技术的一次“大考”,对于阿里巴巴企业内部运营的基础保障技术而言,亦是如此。 回溯双11历史,这背后也经历过“小米加步枪”的阶段:作战室从随处是网线,交换机放地上的“一地狼藉”;到如今媲美5G的wifi网速,到现场却看不到一根网线;从当年使用商用AP(无线路由器),让光明顶双11当天断网一分钟,到全部使用阿里自研AP……阿里巴巴企业智能事业部工程师们提供的基础保障...
在阿里,40岁的奋斗姿势
在阿里,40岁的奋斗姿势 在阿里,什么样的年纪可以称为老呢?35岁? 在云网络,有这样一群人,他们的平均年龄接近40,却刚刚开辟职业生涯的第二战场。 他们的奋斗姿势是什么样的呢? 洛神赋 “翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。髣髴兮若轻云之蔽月,飘飖兮若流风之回雪。远而望之,皎若太阳升朝霞;迫而察之,灼若芙蕖出渌波。” 爱洛神,爱阿里云 2018年,阿里云网络产品部门启动洛神2.0升...
关于研发效能提升的思考
研发效能提升是最近比较热门的一个话题,本人根据这几年的工作心得,做了一些思考总结,由于个人深度有限,暂且抛转引入。 三要素 任何生产力的提升都离不开这三个因素:人、流程和工具,少了其中任何一个因素都无法实现。 人,即思想,也就是古人说的“道”,道不同不相为谋,是制高点,也是高层建筑的基石。 流程,即方法,也是古人说的“法”。研发效能的提升,也就是要提高投入产出比,既要增加产出,也要减...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
入职阿里5年,他如何破解“技术债”?
简介: 作者 | 都铎 作为一名技术人,你常常会听到这样的话: “先快速上线” “没时间改” “再缓一缓吧” “以后再解决” “先用临时方案处理” …… 当你埋下的坑越来越多,不知道哪天哪位同学就会踩上一颗雷。特别赞同“人最大的恐惧就是未知,当技术债可说不可见的时候,才是最让人不想解决的时候。” 作为一个程序员,我们反对复制粘贴,但是我们经常会见到相似的代码,相同的二方包,甚至整个代码...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
深度学习入门笔记(十八):卷积神经网络(一)
欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
节后首个工作日,企业们集体开晨会让钉钉挂了
By 超神经场景描述:昨天 2 月 3 日,是大部分城市号召远程工作的第一天,全国有接近 2 亿人在家开始远程办公,钉钉上也有超过 1000 万家企业活跃起来。关键词:十一出行 人脸...
Java基础知识点梳理
Java基础知识点梳理 摘要: 虽然已经在实际工作中经常与java打交道,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便后面查阅,一方面为了学好java打下基础。 Java简介 java语言于1995年正式推出,最开始被命名为Oak语言,由James Gosling(詹姆
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
你也能看懂的:蒙特卡罗方法
蒙特卡罗方法,也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法 蒙特卡罗方法可以粗略地分成两类:一类是所求解的问题本身具有内在的随机性,借助计算机的运算能力可以直接模拟这种随机的过程。另一种类型是所求解问题可以转化为某种随机分布的特征数,比如随机事件出现的概率,或...
相关热词 c# 识别回车 c#生成条形码ean13 c#子控制器调用父控制器 c# 写大文件 c# 浏览pdf c#获取桌面图标的句柄 c# list反射 c# 句柄 进程 c# 倒计时 线程 c# 窗体背景色
立即提问