Tag: mysql

JDBC + MySQL可以被说服忽略时区吗?

我有一个Java Web应用程序,其中客户端将带时间戳的数据发送到服务器以存储在MySQL数据库中并在以后检索。 这些时间戳应始终视为本地时间,并且永远不会根据时区进行调整:如果一个时区中的客户端输入的时间为18:00:00,则应在另一个时区显示为18:00:00的客户端。 保存此值的数据库列的类型为DATETIME,因为我认为它没有时区调整。 java应用程序接收时间戳作为java.util.Date对象,并在将它们插入PreparedStatements之前将它们转换为java.sql.Timestamp对象。 但是,在此过程中的某个位置,当客户端和服务器位于不同的时区时,时间值会偏移。 为了让你了解我正在寻找什么,我可以将所有时间戳存储为字符串,这正是我想要的效果,但是我必须将字符串格式化并解析为日期时才有意义。他们需要被操作。 当时间戳值应始终被视为本地时间时,处理此类应用程序的常用方法是什么?

PreparedStatements的最佳实践; 何时何时不去

我最近已经开始在Web应用程序中再次使用预准备语句,并且我知道不鼓励对所有事务使用预准备语句。 我不知道的是什么时候最好使用准备好的陈述。 我已经阅读了何时使用而不使用它们,但没有一个例子真正说明了使用它们的最佳实践。 我试图弄清楚我应该使用哪些数据库调用以及哪些不应该使用。 例如,MySQL网站在下一页的“何时使用预准备语句”中提到它准备语句-MySQL

什么JDBC属性对应于mysql命令行的“–skip-secure-auth”选项?

我有一个遗留数据库需要从命令提示符这样连接 mysql –uUserName -hHostName -pPassword -P3307 -A Schema –skip-secure-auth 如何在JDBC属性中指定相同的内容–skip-secure-auth jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://HostName:3307/Schema jdbc.user=UserName jdbc.password=Password jdbc.maxConnections=5

如何使Lucene索引与Mysql数据库保持同步?

我正在尝试利用Lucene在我的应用程序中开发全文搜索,这需要根据我的mysql数据库构建索引。 我想知道如何保持这些索引与db同步? 我提出了以下方法:1)紧密添加业务逻辑中的额外代码以更新搜索索引。 2)运行分离的任务以定期重建索引。 你有其他方法吗? 你认为最好的方法是什么? 任何评论都会很感激,谢谢!

通过Spring MVC将二进制文件上传到MySQL的正确方法

我正在尝试将文件上传到MySQL,但是我无法正确地执行此操作。 我正在使用云平台将Java Spring应用程序作为网站运行。 控制器: byte[] bytes = file.getBytes(); // file is MultipartFile DFile newFile = new DFile(); // my object newFile.setName(name); // name column newFile.setType(type); // Blob blob = new SerialBlob(bytes); // set the blob from binary newFile.setData(blob); fileService.insertFile(newFile); // calls to insert into MySQL 道:两种不同的方式 length = (int)blob.length(); byte[] b = blob.getBytes(1, length); InputStream […]

使用java.sql.PreparedStatement将PDF文件上传到mysql BLOB而不会损坏

我尝试使用以下代码使用java.sql.PreparedStatement将pdf文件升级为mysql Blob字段。 File inFile = new File(“Path+BLOCK.pdf”); byte[] b = new byte[(int)inFile.length()]; PreparedStatement psmnt = (PreparedStatement) con.prepareStatement(“INSERT INTO 2012DOC (SRNO,DOCUMENT) VALUES (?,?)” ); //con is java.sql.Connection object psmnt.setString(1, “1200021”); psmnt.setBytes(2, b); psmnt.executeUpdate(); 此代码执行时没有错误,数据库显示blob内容,但是当我尝试使用下面的代码检索文件时,它会提供一个无法打开的损坏文件。 ResultSet rs=con.Execute(“SELECT DOCUMENT FROM 2012DOC”); rs.next(); response.setContentType(“application/pdf”); response.setHeader(“Content-Disposition”, “attachment; filename=kjsahkjd.pdf”); java.sql.Blob blob = rs.getBlob(“DOCUMENT”); ServletOutputStream servletOutputStream = response.getOutputStream(); InputStream in = blob.getBinaryStream(); […]

JDBC没有执行SHOW DATABASES命令

我想得到一个存储在mysql中的数据库列表,并通过结果集使用命令“show databases”放入java表中。 但它不起作用。 DefaultTableModel model=(DefaultTableModel)dbTbl.getModel(); try{ Class.forName(“com.mysql.jdbc.Driver”); Connection con=DriverManager.getConnection(“jdbc:mysql//localhost/:3306″,”root”,”password”); Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery(“show databases;”); while(rs.next()) { String db=rs.getString(1); model.addRow(new Object[] {db}); } rs.close(); stmt.close(); con.close(); } catch(Exception e) { JOptionPane.showMessageDialog(null,”nahi chalda”); }

Jhipster上的两个MySQL数据库

我正在使用jHipster,它很棒,因为大多数的样板代码都是自动生成的。 在我的应用程序中,我需要两个MySQL数据库。 我该如何配置它们? 我应该为两个不同的模式有两个不同的数据库配置文件吗? 此外,jHipster使用Liquibase,那么如何更改DatabaseConfiguration类?

JDBC Hibernate – Mysql连接错误

我的Ubuntu 11.10桌面上有一个本地mysql服务器。 hostname = localhost; username = root; 密码= root; 数据库名称= CBS。 我真的很困惑,因为当我使用terminal , mysql administrator和mysql query browser访问mysql时,我使用上面提到的那些身份validation,一切都很好。 我的问题是当我在Java App中配置我的jdbc.properties时,我收到此错误: org.springframework.web.util.NestedServletException:请求处理失败; 嵌套exception是org.springframework.jdbc.UncategorizedSQLException:Hibernate操作:无法打开连接; 未分类的SQL的SQLException [???]; SQL状态[28000]; 错误代码[1045]; 用户’root’@’localhost’访问被拒绝(使用密码:YES); 嵌套exception是java.sql.SQLException:用户’root’@’localhost’拒绝访问(使用密码:YES) 我的配置文件jdbc.properties: jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/CBS jdbc.username=root jdbc.password=root 顺便说一句,我将使用本地服务器的原因是因为我们的主服务器关闭所以我必须使用我的本地mysql继续我的项目。 请帮帮我…先谢谢。

Hibernate,MySQL Views和hibernate.hbm2ddl.auto = validate

我可以通过将它们视为表来使用Hibernate中的MySQL视图 – 即。 该实体与为表创建的实体没有什么不同。 但是,当Hibernate设置为validation模型时,我的应用程序将不会部署,因为它无法找到View,因为它假定它是一个表。 是否可以使用Hibernate Entities并启用部署时间validation(hibernate.hbm2ddl.auto = validate)? 谢谢。