我在javaEE里面编写程序链接到了数据库sqlserver,如何通过tomcat把数据发布到网上呢

这是我的程序,连接数据库成功,并且单数run可以在控制台显示数据库数据

现在想通过tomcat把数据库数据发布到网上,这个如何办到呢。打架有相关代码或者教程吗
这是我的连接程序:直接发布到tomcat上,DOS没有错误,网页显示找不到
package MyTest;

import java.sql.*;
import java.util.List;

public class Main {
static String Driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
static String Url = "jdbc:sqlserver://localhost:1433;datebaseName=Mine";
static String User = "sa";
static String Password = "12345";
static Connection conn = null;
public static void main(String[] args) {
try {
Class.forName(Driver);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(Url, User, Password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
Statement sm = conn.createStatement();
String sql = "select * from student";
ResultSet rs = sm.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3));
}
//renderJson(list);

    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }


}

}

2个回答

Java Web,你要建个sevlet程序,把你这段代码移植到get/post方法中,然后打成war
部署到tomcat的webapps目录下即可。

建议你看看Java WEB的相关课程。

jaVa111212121
弥猫深巷的老先森 谢谢
大约 4 年之前 回复

编写一个简单的jsp程序,租用一个云服务器,把你的程序传上去即可。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
javaEE连接mysql数据库,然后通过映射把数据显示到网页上,可是没报错却网页没有内容。

```<h2>我教的课</h2> <div> <ul> <li th:each="subject:${subjects}"> <span th:text="${subject.kc_name}"></span> <span th:text="${subject.kc_teach}"></span> <span th:text="${subject.begin_sj}"></span> </li> </ul> </div> //这个是要显示的网页 ```//显示所有学生信息的请求 @RequestMapping("/query_subject") public String querySubject(Model model){ List<Subject> subjects = null; LSubject subject = new LSubject(); String sqlTxt = "select * from subject_info"; try { subjects = subject.querySubject(sqlTxt); } catch (Exception ex){ ex.printStackTrace(); } model.addAttribute("subjects", subjects); return "subject_info"; }//这个是请求; ``` //向数据库查询教师课程数据,并返回list格式类型的数据。 public List<Subject> querySubject(String sqlTxt) throws ClassNotFoundException { List<Subject> subjects = new ArrayList<Subject>(); JdbcTemplate jdbcTemplate = new JdbcTemplate(); DbManage db = new DbManage(); jdbcTemplate.setDataSource(db.getDataSource()); List<Map<String, Object>> list = jdbcTemplate.queryForList(sqlTxt); for(Map<String, Object> map : list){ Subject subject = new Subject(); subject.setKc_name(map.get("kc_name").toString()); subject.setKc_teach(map.get("kc_teach").toString()); subject.setBegin_sj(map.get("begin_sj").toString()); } return subjects; }//这个处理器,负责处理 ``` //这个是类似超链接一样的,点击“我教的课”就处理请求 <li><a href="/query_subject"><i class="icon-briefcase"></i>我教的课</a></li> //这个是要显示的网页 <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8" /> <title>Insert title here</title> </head> <body> <h2>我教的课</h2> <div> <ul> <li th:each="subject:${subjects}"> <span th:text="${subject.kc_name}"></span> <span th:text="${subject.kc_teach}"></span> <span th:text="${subject.begin_sj}"></span> </li> </ul> </div> </body> </html>``` //还有Subject这个文件没有打出来,大致是 package student.stusys.entity; public class Subject { private String kc_name; private String kc_teach; private String begin_sj; public String getKc_name() { return kc_name; } public void setKc_name(String kc_name) { this.kc_name = kc_name; } public Subject(String kc_name, String kc_teach,String begin_sj) { this.kc_name = kc_name; this.kc_teach = kc_teach; this.begin_sj = begin_sj; } public Subject() { } public String getKc_teach() { return kc_teach; } public void setKc_teach(String kc_teach) { this.kc_teach = kc_teach; } public String getBegin_sj() { return begin_sj; } public void setBegin_sj(String begin_sj) { this.begin_sj = begin_sj; } } 运行以后发现网页上只显示了subject_info.html上面的“我教的课”四个字,其他都没显示出来,还有数据库里面有subject_info这个表,包括kc_name,kc_teach,begin_sj三个字段,希望有会的朋友告诉我解决的方法,谢谢! 用的软件是IDEA。

jsp中在页面上填写的表单信息,怎么保存到SQL数据库

我写了一个填写表单的界面,提交后,另一个页面的表格可以获取到相应的数据。但是,我不知道该怎么把 数据保存到数据库中。用了 String sql1 = "insert into LeaveList(country,profession,classes,studentId,name,contact,startdate,enddate,teacher) values ('"+country+"','"+profession+"','"+classes+"','"+id+"','"+name+"','"+contact+"','"+startdate+"','"+enddate+"','"+teacher+"')";并没有效果呀。应该怎么弄呢?或者各路大神,可以为我举个表单保存数据到数据库的例子吗?谢谢啦

javaee数据库读取问题

我的代码:<%@page import="java.sql.ResultSet"%> <%@page import="com.stuinfo.dbutil.DBManager"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <% DBManager dbManager = new DBManager(); String sql = "select * from student"; ResultSet rs = dbManager.execQuery(sql); while(rs.next()){ String a = rs.getString(1); %> <tr><td><%=rs.getString(1) %></td><td><%=rs.getString(2) %></td><td> 代码中的student表和xueji表在单表查询时都可以正常使用,当我想执行“select * from student natural join xueji; ” 的时候就会在此处报错while(rs.next() ..求助!!!!!

Java向SQL server插入数据报错

这个是连接数据库的DB ![图片说明](https://img-ask.csdn.net/upload/201607/07/1467861489_291557.png) 这个是执行操作的action中的注册方法 ![图片说明](https://img-ask.csdn.net/upload/201607/07/1467861499_416043.png) 报错 ![图片说明](https://img-ask.csdn.net/upload/201607/07/1467861509_671315.png)

有大神知道怎么连接jsp与数据库??

有大神知道怎么连接jsp与数据库??还有tomcat一直关联不了那个myeleice

关于javaEE和数据库的问题

如果我现在程序插入一条数据 createTime是2016-10-31 12:00:00插入的那么如果想要 6个小时以后也就是18:00:00到点了自动修改里面的一个状态 。这个怎么做?我们之前 用的是spring的定时器,但是用定时器去跑会有误差。如何做到分秒不差???这个是需要 数据库做什么操作还是程序控制的?求大神指点啊。。。

连接sqlserver数据库的时候出现这么离奇的问题,大家知道怎么回事吗

我是用javaEE通过jfinal里面的C3p0插件连接sqlserver数据库的,为什么会出现[ ` ]这个附近有错误呢,我的程序里面明明没有这个符号呀 这是我的C3p0配置: C3p0Plugin cp = new C3p0Plugin("jdbc:sqlserver://localhost:1433; datebaseName = web","sa","12345","com.microsoft.sqlserver.jdbc.SQLServerDriver"); 这是sql查询语句 List<Test> list = Test.dao.find("select * from web"); 只有这一条,应该是对的吧 下面是我的全部程序,比较简单,就是测试连接 package jfinal; import com.jfinal.config.Constants; import com.jfinal.config.Handlers; import com.jfinal.config.Interceptors; import com.jfinal.config.JFinalConfig; import com.jfinal.config.Plugins; import com.jfinal.config.Routes; import com.jfinal.plugin.activerecord.ActiveRecordPlugin; import com.jfinal.plugin.c3p0.C3p0Plugin; public class jfinalConfig extends JFinalConfig { @Override public void configConstant(Constants me) { me.setDevMode(true); } @Override public void configRoute(Routes me) { me.add("/web", indexController.class); } @Override public void configPlugin(Plugins me) { C3p0Plugin cp = new C3p0Plugin("jdbc:sqlserver://localhost:1433; datebaseName = web","sa","12345","com.microsoft.sqlserver.jdbc.SQLServerDriver"); me.add(cp); ActiveRecordPlugin arp = new ActiveRecordPlugin(cp); me.add(arp); arp.addMapping("Test", Test.class); } @Override public void configInterceptor(Interceptors me) { } @Override public void configHandler(Handlers me) { } } package jfinal; import com.jfinal.plugin.activerecord.Model; public final class Test extends Model<Test> { public static final Test dao = new Test(); } package jfinal; import java.util.List; import com.jfinal.core.Controller; public class indexController extends Controller { public void index(){ List<Test> list = Test.dao.find("select * from web"); renderJson(list); } } ![图片说明](https://img-ask.csdn.net/upload/201605/07/1462599511_337179.png)

JAVAEE:JSP传值给数据库,测试信息进行登录

PersonDAO.java ``` package dao; import java.sql.*; import domain.Person; import util.JDBCUtils; /** * 数据层一个程序 * DAO层返回对象,在业务层通过操作这些对象来实现增删改查 * */ public class PersonDAO { public Person login(Person user) { //登录 Person existUser = null; Connection conn = null; PreparedStatement stmt = null; ResultSet rs = null; try {//JDBC查询 conn = JDBCUtils.getConnection(); String sql = "select * from person where name=? and password=?"; //数据库编译时 stmt = conn.prepareStatement(sql); //将sql发送给数据库进行编译 //设置sql参数 stmt.setString(1,user.getName()); //传入数据值,不会作为关键字 --防止注入 stmt.setString(2,user.getPassword()); rs = stmt.executeQuery(); //执行sql //如果登陆成功,只有一条记录 if (rs.next()) { existUser=new Person(); //表示已登录用户 existUser.setID(rs.getString("ID")); existUser.setName(rs.getString("name")); existUser.setPassword(rs.getString("password")); existUser.setBirthDate(rs.getDate("birthday")); } } catch (Exception e) { e.printStackTrace(); } System.out.println(user.getName()); System.out.println(user.getPassword()); try { System.out.println(rs.getString("name")); } catch (Exception e) { // TODO: handle exception System.out.println("2"); } return existUser; } } ``` 这个是个测试文件Test ``` package dao; import util.JDBCUtils; import java.sql.*; import domain.Person; public class test { public static void main(String[] args) { // TODO Auto-generated method stub Person existUser = null; Connection conn = null; PreparedStatement stmt = null; ResultSet rs = null; try {//JDBC查询 conn = JDBCUtils.getConnection(); String sql = "select * from person where name=? and password=?"; //数据库编译时 stmt = conn.prepareStatement(sql); //将sql发送给数据库进行编译 //设置sql参数 stmt.setString(1, "Tom"); //传入数据值,不会作为关键字 --防止注入 stmt.setString(2, "12345"); rs = stmt.executeQuery(); //执行sql //如果登陆成功,只有一条记录 if (rs.next()) { existUser=new Person(); //表示已登录用户 existUser.setID(rs.getString("ID")); existUser.setName(rs.getString("name")); existUser.setPassword(rs.getString("password")); existUser.setBirthDate(rs.getDate("birthday")); } } catch (Exception e) { e.printStackTrace(); } try { System.out.println(rs.getString("name")); } catch (Exception e) { // TODO: handle exception } System.out.println(existUser.getID()); System.out.println(existUser.getName()); System.out.println(existUser.getPassword()); System.out.println(existUser.getBirthDate()); } } ``` ![图片说明](https://img-ask.csdn.net/upload/202004/15/1586942252_969163.png) 这是我做的一个测试 如果直接输入Tom和12345 数据库就会读到 包括结果集rs和新建的person类existuser都有数值 ![图片说明](https://img-ask.csdn.net/upload/202004/15/1586942270_238850.png) 之后我再DAO类里面做测试 user的值能传过来 但是查询过后就没有 rs没有数值 try语句会走向catch JDBCUtils ``` package util; import java.sql.*; /* * Person类的JDBC 工具类,抽取公共方法 */ public class JDBCUtils { //设置数据库名称和登录用户信息 private static String DRIVERCLASS="com.mysql.cj.jdbc.Driver"; private static String URL="jdbc:mysql://localhost:3306/factory?serverTimezone=UTC"; private static final String USER="root"; //数据库用户 private static final String PASSWORD="12345"; //用户root的连接数据库的密码 private static Connection conn=null; //与数据库的连接; // 装载驱动 private static void loadDriver() { try { //1.加载MYSQL JDBC驱动程序 Class.forName(DRIVERCLASS); } catch(ClassNotFoundException e) { e.printStackTrace(); } } //建立连接 public static Connection getConnection() throws Exception { loadDriver(); return (Connection)DriverManager.getConnection(URL, USER, PASSWORD); } //释放资源 public static void release(ResultSet rs, Statement stmt, Connection conn) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } rs = null; } release(stmt, conn); } public static void release(Statement stmt, Connection conn) { if (stmt != null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } stmt = null; } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } conn = null; } } } ``` Person.java ``` package domain; import java.util.Date; //传输对象,保存User相关数据 public class Person { private String ID; //类属性需要与数据库中的字段一一对应 private String name; private String password; private Date birthday; public Person() { super(); } public Person(String iD, String name, String password, Date birthDate) { super(); ID = iD; this.name = name; this.password = password; this.birthday = birthDate; } public String getID() { return ID; } public void setID(String iD) { ID = iD; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getBirthDate() { return birthday; } public void setBirthDate(Date birthDate) { this.birthday = birthDate; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } } ``` personservice.java ``` package service; import domain.Person; import dao.PersonDAO; /** * 业务层一个程序 * */ public class PersonService { /** * 根据用户名 和 密码查询其它信息 * @param user * @return 如果返回null证明 用户名或者密码错误 */ public Person login(Person user) { PersonDAO userDAO = new PersonDAO(); //查询, 将 user对象传递 DAO return userDAO.login(user); } } ``` ![login.jsp](https://img-ask.csdn.net/upload/202004/15/1586942694_197232.png) ![loginValidat.jsp](https://img-ask.csdn.net/upload/202004/15/1586942718_847891.png) 我最后解决了 原来是下面lib没有jar包 jsp访问不了mysql ![图片说明](https://img-ask.csdn.net/upload/202004/15/1586952263_842754.png)

javaee系统运行一段时间报数据库连接失败的错误

![图片说明](https://img-ask.csdn.net/upload/201901/07/1546849805_571542.jpg) 发布完成,大概跑一天左右就会出现这个问题。发现好像主要就是连接oracle 出这个问题。 我检查过xml中的语句没问题。而且也能用就是时间一长就会出错。 找不到根本原因所在。所以每次报这个错误重启下项目就好了。 求解决方案。及引起bug原因。 不胜感激。

尝试写了一个 JDBC 操作 SQLServer 的工具类,但是好像有问题,求大神帮忙指正

java新人,尝试写了一个 JDBC 操作 SQLServer 的工具类,但是好像有问题,调用 insert 指令没问题,而 select 指令出现如下报错: com.microsoft.sqlserver.jdbc.SQLServerException: ')' 附近有语法错误。 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1515) at com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(SQLServerStatement.java:792) at com.microsoft.sqlserver.jdbc.SQLServerStatement$StmtExecCmd.doExecute(SQLServerStatement.java:689) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:180) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:155) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQuery(SQLServerStatement.java:616) at com.javaee.servletxm.comm.MSSQLJDBC.select(MSSQLJDBC.java:160) at com.javaee.servletxm.comm.MSSQLJDBC.select(MSSQLJDBC.java:195) at com.javaee.servletxm.comm.MSSQLJDBC.selectFirstValue(MSSQLJDBC.java:172) at com.javaee.servletxm.comm.MSSQLJDBC.getPageNumber(MSSQLJDBC.java:221) at com.javaee.servletxm.comm.MSSQLJDBC.selectByFY(MSSQLJDBC.java:259) at com.javaee.servletxm.kqgl.KqManager.getAllKqxx(KqManager.java:38) at com.javaee.servletxm.kqgl.Kqwh.doGet(Kqwh.java:47) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 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:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1760) at java.lang.Thread.run(Thread.java:724) 这是具体的代码,求大神帮忙指正 package com.javaee.servletxm.comm; /** * jdbc下 SQL Server 2005 数据库的封装类 */ import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import java.sql.Timestamp; import java.text.SimpleDateFormat; import java.util.List; import java.util.Properties; public class MSSQLJDBC { // 配置文件名称 private String iniFileName = MSSQLJDBC.class.getClassLoader().getResource("/com/javaee/servletxm/comm").getPath()+ "mssql.properties"; // 连接数据库 private String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; private String url = "jdbc:sqlserver://localhost;DatabaseName=jdms"; private String user = "sa"; private String password = ""; // 定义连接属性 private Connection connect = null; // 与连接有关三个通道 private Statement stmt = null; private PreparedStatement pstmt = null; private CallableStatement cstmt = null; public static final String stmtType = "stmt"; public static final String pstmtType = "pstmt"; public static final String cstmtType = "cstmt"; // 定义参数类型的静态常量值 public static final String varCharType = "varchar"; public static final String intType = "int"; public static final String doubleType = "decimal"; public static final String dateType = "datetime"; public static final String timeType = "timestamp"; // 定义全局的结果集 private ResultSet rs = null; // 在构造方法中对属性进行初始化赋值操作 public MSSQLJDBC() { // 读取配置文件 readIni(); // 初始化连接 initConnect(); } // 可配置文件 .properties // 读取配置文件 private void readIni() { File file = new File(iniFileName); if (!file.exists()) { // 创建一个文件 try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } // 判断文件是否有值 if (file.length() == 0) {// 说明是一个空文件 // 初始化值 try { Properties p = new Properties(); p.put("driver", driver); p.put("url", url); p.put("user", user); p.put("password", password); FileOutputStream fos = new FileOutputStream(file); p.store(fos, "配置文件信息"); fos.close(); } catch (IOException e) { e.printStackTrace(); } } else {// 如果有值 // 将信息读取出来 try { FileInputStream fis = new FileInputStream(file); Properties p = new Properties(); p.load(fis); this.driver = p.getProperty("driver"); this.url = p.getProperty("url"); this.user = p.getProperty("user"); this.password = p.getProperty("password"); fis.close(); } catch (IOException e) { e.printStackTrace(); } } } // 建立连接 private void initConnect() { try { Class.forName(driver); this.connect = DriverManager.getConnection(url, user, password); this.connect.setAutoCommit(false);// 设置手动提交事务 this.stmt = connect.createStatement(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } /*/ 从tomcat缓冲池获取连接 private void initConnectFromDataSource() { try { InitialContext ic = new InitialContext(); DataSource ds = (DataSource) ic.lookup("java:comp/env/jdbc/oracleds"); this.connect = ds.getConnection(); this.connect.setAutoCommit(false); this.stmt = connect.createStatement(); } catch (NamingException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } }*/ // 需要调用者控制事务的两个方法 // 提交方法 private void commit() { try { this.connect.commit(); } catch (SQLException e) { e.printStackTrace(); } } // 回滚事务 private void rollBack() { try { this.connect.rollback(); } catch (SQLException e) { e.printStackTrace(); } } // 定义一组与操作有关的方法 // 使用普通通道执行的select public ResultSet select(String sql) { ResultSet prs = null; if (stmt != null) { try { prs = stmt.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); } } return prs; } // 根据传入的sql直接获取单一值 // 使用此方法的时候sql语句返回的单一的值 public String selectFirstValue(String sql, String type, List<String> csList) { String rstr = ""; rs = select(sql, type, csList);// 确定此结果集只有一条记录 if (rs != null) {// 说明结果集有值,且只有一条记录 try { ResultSetMetaData rsmd = rs.getMetaData(); if (rs.next()) { // 移动到第一条记录 String p_type = rsmd.getColumnTypeName(1); rstr = getResultSetValue(rs, 1, p_type); } } catch (SQLException e) { e.printStackTrace(); } } return rstr; } // 使用普通通道执行的select /** * sql 参数 type 使用通道的类型 stmt pstmt cstmt List<String> csList 预编通道执行的参数队列 * String 最少必须满足如下条件的字符串 数据类型 ,数据值 数据类型定义说明 字符串 数字(整数、小数) 日期(DATE、TIMESTAMP) */ public ResultSet select(String sql, String type, List<String> csList) { ResultSet prs = null; if (type.equals(stmtType)) {// 说明使用普通通道来执行 prs = select(sql); } else if (type.equals(pstmtType)) {// 说明使用预编译通道来执行 if (connect != null) { try { pstmt = connect.prepareStatement(sql); // 验证传入的参数和sql中的参数个数一致 setPrepareStatement(pstmt, csList);// 将参数设置进当前的预编译通道 prs = pstmt.executeQuery(); } catch (Exception e) { e.printStackTrace(); } } } return prs; } // 获取 总页数 public int getPageNumber(String sql, String type, List<String> csList, int pageSize) { // 处理总页数 int pageNumber = 0; // 第一步获取sql总记录数 String psql = "select count(*) from (" + sql + ")"; String result = selectFirstValue(psql, type, csList); int rows = 0; if (result != null && result.trim() != "") { rows = Integer.valueOf(result); } if (rows % pageSize == 0) { pageNumber = rows / pageSize; } else { pageNumber = rows / pageSize + 1; } return pageNumber; } /** * 自动添加分页查询方法 * * @param sql * 要执行的sql * @param type * 执行方式 * @param csList * 参数列表 * @param curPage * 当前页数 * @param pageSize * 每页记录数 默认为10 * @return */ public ResultSet selectByFY(String sql, String type, List<String> csList, int curPage, int pageSize) { ResultSet prs = null; // 处理 每页记录数 if (pageSize <= 0) { pageSize = 10;// 默认页面10条记录 } int pageNumber = getPageNumber(sql, type, csList, pageSize); // 处理当前页数 if (curPage < 0) { curPage = 1;// 默认第一页 } if (curPage > pageNumber) { curPage = pageNumber; } String psql = "select tmpaa.* from (select tmpa.*,(select (ROW_NUMBER() over (order by id))) as rn from (" + sql + ") tmpa where (select (ROW_NUMBER() over (order by id))) <= " + (curPage * pageSize) + ") tmpaa where tmpaa.rn >= " + ((curPage - 1) * pageSize + 1); prs = select(psql, type, csList); return prs; } // 将预编通道执行的参数队列按照指定规则设置进通道中 private void setPrepareStatement(PreparedStatement p, List<String> csList) throws Exception { if (csList != null && csList.size() > 0) { for (int i = 0; i < csList.size(); i++) { // 此处的str是数据类型 ,数据值 // 解析出数据类型和数据值 String[] s = csList.get(i).split(","); String sType = s[0]; String sData = s[1]; if (varCharType.equals(sType)) { p.setString(i + 1, sData); } else if (intType.equals(sType)) { p.setInt(i + 1, Integer.valueOf(sData)); } else if(doubleType.equals(sType)){ p.setDouble(i+1, Double.valueOf(sData)); } else if (dateType.equals(sType)) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd"); java.util.Date d = sdf.parse(sData); p.setDate(i + 1, new Date(d.getTime())); } else if (timeType.equals(sType)) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd"); java.util.Date d = sdf.parse(sData); p.setTimestamp(i + 1, new Timestamp(d.getTime())); } } } } // 定义一个执行insert update delete的方法 public int iudSql(String sql) { int ri = -1; if (stmt != null) { try { ri = stmt.executeUpdate(sql); commit(); } catch (SQLException e) { e.printStackTrace(); rollBack(); } } return ri; } public int iudSql(String sql, String type, List<String> csList) { int ri = -1; if (stmtType.equals(type)) { ri = iudSql(sql); } else if (pstmtType.equals(type)) { if (connect != null) { try { pstmt = connect.prepareStatement(sql); setPrepareStatement(pstmt, csList); ri = pstmt.executeUpdate(); commit(); } catch (Exception e) { e.printStackTrace(); rollBack(); } } } return ri; } /** * 编写一个通用的遍历ResultSet结果集的方法 */ public void iteratorResultSet(ResultSet rs) { try { if (rs != null) {// 说明有值 // ResultSetMetaData 此对象里封装了与结果集有关所有信息 // 此结果有几列组成,每列的列名,每列的数据类型 ResultSetMetaData rsmd = rs.getMetaData(); // 得到结果集列数 int columnCount = rsmd.getColumnCount(); // 输出此结果集的所有列名 for (int i = 1; i <= columnCount; i++) { System.out.print(rsmd.getColumnName(i) + "\t"); } System.out.println(""); // 遍历输出所有的数据 while (rs.next()) { // 如何在获取rs中的数据? for (int i = 1; i <= columnCount; i++) { String type = rsmd.getColumnTypeName(i); System.out.print(getResultSetValue(rs, i, type) + "\t"); } System.out.println(""); } } } catch (SQLException e) { e.printStackTrace(); } } // 从ResultSet中根据数据类型来得到数据值的方法 // 先处理常用的sqlserver的数据类型的对应 private String getResultSetValue(ResultSet rs, int index, String type) { String rstr = ""; try { if (rs != null && !"".equals(type) && index > 0) { if ("char".equals(type.trim()) || "varchar".equals(type.trim())) { if (rs.getString(index) != null) { rstr = rs.getString(index); } } else if ("int".equals(type.trim())) { rstr = rs.getInt(index) + ""; } else if ("decimal".equals(type.trim())) { rstr = String.valueOf(rs.getDouble(index)); } else if ("date".equals(type.trim())) { Date date = rs.getDate(index); if (date != null) { rstr = new SimpleDateFormat("yyyy年MM月dd日").format(date); } } else if ("timestamp".equals(type.trim()) || "datetime".equals(type.trim())) { Timestamp tt = rs.getTimestamp(index); if (tt != null) { rstr = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒").format(tt); } } } } catch (SQLException e) { e.printStackTrace(); } return rstr; } /* //统一事务管理的批量sql的封装 public boolean iudSql(List<String> sqlList){ int ri = -1; if(stmt!=null){ try { ri = stmt.executeUpdate(sql); commit(); } catch (SQLException e) { e.printStackTrace(); rollBack(); } } return ri; }*/ // 关闭连接 public void close() { try { // 关闭所有的与数据库有关的对象 if (rs != null) { rs.close(); rs = null; } if (stmt != null) { stmt.close(); stmt = null; } if (pstmt != null) { pstmt.close(); pstmt = null; } if (cstmt != null) { cstmt.close(); cstmt = null; } if (connect != null) { connect.close(); connect = null; } } catch (SQLException e) { e.printStackTrace(); } } }

我是javaee新手,运行数据库出现这样的问题不知道怎么修改description The server encountered an internal err

<%@ page language="java" import="java.sql.*"%> <%@ page contentType="text/html;charset=GB18030"%> <%@ page import="java.util.*" %> <% reponse.setCharacterEncoding("GB18030"); String susername,spassward,school,scho,sclass,stel,sgender; susername=request.getParameter("Name"); spassword=request.getParameter("passward1"); school=request.getParameter("xueyuan"); scho=request.getParameter("zhuanye"); sclass=request.getParameter("nianji"); stel=request.getParameter("number"); sgender=request.getParameter("gender"); String insertquery= "insert into student set Name='"+susername+"',passward1='"+spassward+"', xueyuan='"+school+"',number='"+stel+"',zhuanye='"+scho+"',nianji='"+sclass+"',number='"+stel+"',gender='"+sgender+"'"; String selectquery="select * from student where Name='"+susername+"; Connction conn=null; Statement stmt=null; Resultset rs=null; try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); conn= DriverManager.getConnection("jdbc:mysql://localhost/test","root","root"); stmt= conn.createStatement(); rs=stmt.executeQuery(selectquery); if(rs.next()){ response.sendRendirect("register.jsp");} return;} else{ stmt.executeQuery(insertquery);} }catch(SQLException ex){ ex.printStackTrace(); response.sendRendirect("login.jsp");} finally {stmt.close(); conn.close();} %>

IDEA软件数据库数据分页显示时运行报错,mysql数据库,语言javaEE,SPringmvc,themeleaf

2018-12-24 22:17:28.254 ERROR 17368 --- [nio-8080-exec-3] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause java.lang.NullPointerException: null at student.stusys.controller.CStudent.queryStudent_Page(CStudent.java:150) ~[classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_121] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_121] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_121] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121] at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:209) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:891) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:866) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:635) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851) ~[spring-webmvc-5.0.9.RELEASE.jar:5.0.9.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-embed-websocket-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-5.0.9.RELEASE.jar:5.0.9.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) ~[tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) [tomcat-embed-core-8.5.34.jar:8.5.34] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-8.5.34.jar:8.5.34] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_121] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_121] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.5.34.jar:8.5.34] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121] ``` ```

javaEE 工程添加web模块,启动时数据库拒绝访问

现在的项目想要建立一个JAVAEE工程 其中包含WEB模块和EJB模块。 JAVAEE工程 含有空的WEB模块时,可以正常启动。(weblogic服务器) 当我把写好的WEB工程 移植过来的时候,启动时报数据库拒绝连接。 然后我看了一下我的datasource配置 用的是 org.apache.tomcat.jdbc.pool.DataSource 这个连接池。 单部署web工程,在weblogic上启动时没有问题。 是不是这个数据源 用在JAVAEE项目中 会有冲突?

javaee程序中的elasticsearch

在javaee程序中利用elasticsearch作为搜索,每次搜索前是不是都要将数据库的数据都导入到ES中

proxool连接sqlserver出现类似假死现象的问题

在项目中通过proxool配置jdbc连接sqlserver。 配置文件如下: proxool.xml <?xml version="1.0" encoding="ISO-8859-1"?> <something-else-entirely> <proxool> <alias>pool</alias> <driver-url>jdbc:sqlserver://localhost:1433;DatabaseName=xibowork</driver-url> <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class> <driver-properties> <property name="user" value="sa"/> <property name="password" value="密码"/> </driver-properties> <maximum-connection-count>1000</maximum-connection-count> <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql> </proxool> </something-else-entirely> web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <display-name></display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>ServletConfigurator</servlet-name> <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class> <init-param> <param-name>xmlFile</param-name> <param-value>WEB-INF/proxool.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- zh-cn encoding --> <filter> <filter-name>struts-cleanup</filter-name> <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class> </filter> <filter-mapping> <filter-name>struts-cleanup</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> </web-app> 最后通过 Class.forName( "org.logicalcobwebs.proxool.ProxoolDriver" ); conn = DriverManager.getConnection("proxool.pool"); 获取连接,都是按照常规来配置的,myeclipse不报错。问题就来了。 在运行到conn = DriverManager.getConnection("proxool.pool");[b]即不报错也无法取得conn,就是说类似在这句话上假死了一样[/b], 求大牛解惑,急

eclipse创建web项目 在JAVAEE中没有SRC

eclipse创建web项目 在JAVAEE中没有SRC 创建SRC说已经存在 在javaResources中有SRC 但是右键又没有Folder![图片说明](https://img-ask.csdn.net/upload/201708/22/1503392395_872726.png) ![图片说明](https://img-ask.csdn.net/upload/201708/22/1503392409_552831.png) 我想要的就是这样 ![图片说明](https://img-ask.csdn.net/upload/201708/22/1503392438_119886.png) 求大神指点 不知道在么弄出来啊

用Spring的 jdbcTemplate访问数据库。可为什么更新不了数据库的东西呀。没用到事务

我还没用到事务。只是更新字段。 ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548731584_414056.png) ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548731594_491588.png) ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548731612_676390.png) ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548731752_453047.png) 这是个小案例,但只是再这里没法显示。其他项目做的类似的就可以更新数据库。我没看出来啥问题。。

JSP查询SQL时候发生Exception:“该语句没有返回结果集”怎么解决

我在查询SQL时候发生了一个Exception——“com.microsoft.sqlserver.jdbc.SQLServerException: 该语句没有返回结果集。” 代码片段如下: [code="java"] String strQuery = "Create Table testTable ( [Number] varchar(MAX) , [Values] varchar(255) );"; Statement stsm = conn.createStatement(); [b]stsm.executeQuery(strQuery);[/b] //Tomcat提示出错在这里 [/code] 这个究竟是怎么回事??? 为何一个Statement的executeQuery会有这样的出错提示???

请问为什么我从外部复制java文件到eclipse javaee里面注释就是乱码啊

我在首选项里面尝试改变编码设置还是没有用,我只能用ultraedit先打开,然后将里面的东西复制过去,真是郁闷,不知有什么解决办法,

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

搜狗输入法也在挑战国人的智商!

故事总是一个接着一个到来...上周写完《鲁大师已经彻底沦为一款垃圾流氓软件!》这篇文章之后,鲁大师的市场工作人员就找到了我,希望把这篇文章删除掉。经过一番沟通我先把这篇文章从公号中删除了...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

程序员为什么千万不要瞎努力?

本文作者用对比非常鲜明的两个开发团队的故事,讲解了敏捷开发之道 —— 如果你的团队缺乏统一标准的环境,那么即使勤劳努力,不仅会极其耗时而且成果甚微,使用...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《Oracle Java SE编程自学与面试指南》最佳学习路线图2020年最新版(进大厂必备)

正确选择比瞎努力更重要!

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

字节跳动面试官竟然问了我JDBC?

轻松等回家通知

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

阿里面试官让我用Zk(Zookeeper)实现分布式锁

他可能没想到,我当场手写出来了

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

立即提问
相关内容推荐