我有一个存储经度和纬度坐标的表格(谷歌地图)我将列定义为浮点数但是当我尝试插入一个值-61.45859899999999和10.28289时,它们将四舍五入为-61.46和10.30.如何修改列以保持数据不变.
我正在使用mysql toad.Under是表的代码:
CREATE TABLE `tblGeoCodes` (
`recNo` int(11) NOT NULL AUTO_INCREMENT,
`longLocation` float(30,2) DEFAULT NULL,
`latLocation` float(30,2) DEFAULT NULL
Run Code Online (Sandbox Code Playgroud) 我有一个Spring Mvc 3表单POST到控制器,在控制器中我调用执行DML语句.我还有一个单独的验证类,它实现了Validator,并在我的Controller中调用.我在那里进行简单和复杂的验证,例如检查用户名是否存在,如果存在则返回错误消息.
我想使用ajax来验证视图中字段外的用户名字段,但我想调用已经实现的验证,并且只验证用户名字段.
我怎样才能实现这一点,我是否需要在Ajax中调用Controller类并有一个单独的@RequestMapping来处理它?我可以举例说明如何实施.
我有一个名为"人员"的对象我希望根据用户想要执行的功能执行不同类型的验证,例如,当正在注册/保存人员记录时,我想要检查是否为NULL并生成一名官员数字以及更新记录时我不想执行此检查并执行更新语句.
但是,从那以后我遇到了问题.我看过不同的方法,它不够干净或灵活.我尝试了以下方法,面临的问题是;
将注册验证器与Controller一起使用但每个Controller仅允许注册一个验证器.这使得该验证的实现适用于在控制器中执行的所有功能.
如何在不为该方法使用单独的Controller的情况下为同一对象执行不同的验证.
班主任
public class Officers implements Serializable{
private String userName;
private String password;
private String password2;
private String fName;
private String lName;
private String oName;
private int divisionNo;
private officerNumber;
Run Code Online (Sandbox Code Playgroud)
OfficerRegistrationValidation类
@Component
public class OfficerRegistrationValidation implements Validator {
public boolean supports(Class<?> clazz) {
return Officers.class.equals(clazz);
}
public void validate(Object target, Errors errors) {
Officers officer = (Officers) target;
if (officer.getPassword() == null) {
errors.rejectValue("password", "password.required");
}
if (officer.getPassword2() == null) {
errors.rejectValue("password2", "password2.required");
}
.............. …Run Code Online (Sandbox Code Playgroud) 我有一个javascript对象,我想计算该对象中的记录数.我已经尝试了长度和尺寸,但我没有得到计数.
宾语
var person = new Object();
person.name = null;
person.age = null;
person.gender = null;
Run Code Online (Sandbox Code Playgroud)
然后我用这样的数据填充这个Object;
person.name = 'John';
person.age = 20;
person.gender = 'M';
person.name = 'Smith';
person.age = 22;
person.gender = 'M';
Run Code Online (Sandbox Code Playgroud)
我想返回一个包含两行数据的计数.
我使用的是Spring 3.0.我没有使用hibernate或maven依赖项.我已下载jar文件并将其添加到我的类路径中.我收到了javax.validation.ValidationException.在研究了这个问题后,我将hibernate-core-3.5.6.jar和slf4-api.1.4.3.jar文件包含在类路径中.
错误日志
2073 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] ERROR org.springframework.web.servlet.DispatcherServlet - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.beanvalidation.LocalValidatorFactoryBean#0': Invocation of init method failed; nested exception is javax.validation.ValidationException: Unable to find a default provider
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:631)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:133)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1206)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)
at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1284)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1382)
at …Run Code Online (Sandbox Code Playgroud) 我有一个base64图像,如下所示:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAADwCA......
Run Code Online (Sandbox Code Playgroud)
有没有办法可以使用上面编码的图像在画布上绘制它?有没有人有这样的例子.
编辑:
这对我有用,它只在图像而不是base64时绘制图像
这有效:
<script type="text/javascript">
var pos = 0, ctx = null, ctx2 = null,saveCB, image = [], image2 = new Image();
var canvas = document.createElement('canvas');
var image2 = new Image();
canvas.setAttribute('width', 320);
canvas.setAttribute('height', 240);
ctx = canvas.getContext('2d');
image = ctx.getImageData(0, 0, 320, 240);
var saveCB = function (data) {
var col = data.split(';');
var img = image;
for (var i = 0; i < 320; i++) {
var tmp = parseInt(col[i]);
img.data[pos + 0] …Run Code Online (Sandbox Code Playgroud) 嗨,我有一个查询,我从数据库中选择值,我想与所选数据进行比较。我能够创建查询并传入参数,但在访问从查询返回的值时仍然遇到一些问题。有人能告诉我我是否在正确的轨道上,我想我写错了最后两个陈述。
String sql = "SELECT userName, password FROM tblusers WHERE userName = ? AND password = ? ";
Object[] parameters = new Object[] {login.getUserName(), login.getPassword()};
String dbUserName = (String)getJdbcTemplate().queryForObject(
sql, parameters, String.class);
String dbPassword = (String)getJdbcTemplate().queryForObject(
sql, parameters, String.class);
Run Code Online (Sandbox Code Playgroud) 我收到以下错误:
[C:\Users\Darin\apache-tomcat-6.0\webapps\crimeTrack\WEB-INF\classes\com\crimetrack\jdbc\JdbcCountryDAO.class]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: 'dataSource' or 'jdbcTemplate' is required
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:631)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:133)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1206)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:778)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:504)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1385)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:306)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1389)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1653) …Run Code Online (Sandbox Code Playgroud) 我有一个包含多个数据块的表单,所有字段都通过将其属性设置为数据库列名来绑定到数据库。每个块上的所有项目都显示在一个画布上。
表单上的项目包含个人数据,但是客户电话号码和地址等信息存储在一对多映射的单独表中,并由客户号码链接,它考虑到客户可以有很多电话号码和很多地址。
这里最大的问题是当用户处于查询模式并且在他们尝试离开块时输入了每个块的信息时,他们会收到一条消息,询问他们“您是否要保存更改”。每个块都会发生这种情况。所以这条消息出现了好几次。
我想要实现的是应该抑制此消息,以便用户仅被询问一次。我知道一旦用户回答是,我可以在每个块上 do_commit 进行更改保存。但是,我无法控制此消息,我想知道构建应用程序以避免这种情况的最佳方法。
我能够加密数据,但是在解密时出现以下错误:
错误
HTTP Status 500 - Request processing failed; nested exception is javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:894)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
Run Code Online (Sandbox Code Playgroud)
这是我的加密和解密代码
//secret key 8
private static String strkey ="Blowfish";
Run Code Online (Sandbox Code Playgroud)
更新
//encrypt using blowfish algorithm
public static byte[] encrypt(String Data)throws Exception{
SecretKeySpec key = new SecretKeySpec(strkey.getBytes("UTF8"), "Blowfish");
Cipher cipher = Cipher.getInstance("Blowfish");
cipher.init(Cipher.ENCRYPT_MODE, …Run Code Online (Sandbox Code Playgroud) java ×5
spring-mvc ×4
spring ×3
validation ×3
annotations ×2
blowfish ×1
canvas ×1
controller ×1
encryption ×1
geolocation ×1
google-maps ×1
html ×1
html5 ×1
javascript ×1
jdbc ×1
jdbctemplate ×1
jquery ×1
jsp ×1
mysql ×1
object ×1
oracle ×1
oracleforms ×1
spring-jdbc ×1
sql ×1