Skip to main content

Posts

Showing posts with the label Java

Every thing about ConcurrentHashMap

Why ConcurrentHashMap is better than Hashtable and just as good as a HashMap http://www.codercorp.com/blog/java/why-concurrenthashmap-is-better-than-hashtable-and-just-as-good-hashmap.html Why ConcurrentHashMap does not support null values http://anshuiitk.blogspot.com/2010/12/why-concurrenthashmap-does-not-support.html

Separate a string into separate "tokens"

Remember CSV files!!! It's common to have to separate a string into separate "tokens". These tokens can be words, numbers, commands, or whatever. Ways to parse separated using delimiter- http://leepoint.net/notes-java/data/strings/96string_examples/example_stringToArray.html A StringTokenizer class that handle empty tokens. http://geosoft.no/software/tokenizer/SmartTokenizer.java.html 

MySql Timediff and JDBC (ConnectorJ) - Bad format for Time 'hhh:mm:ss' in column x

MySQL Types to Java Types for ResultSet.getObject(). MySQL Type Name Return value of GetColumnClassName Retur TIME TIME java.sql.Time http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-type-conversions.html ResultSet.getTime() will fail with an SQLException: "Bad format for Time 'hhh:mm:ss' in column x" http://bugs.mysql.com/bug.php?id=11154 Surprisingly (Shockingly) ResultSet.getString() was also throwing the same exception "Bad format for Time". http://forums.sun.com/thread.jspa?threadID=5149261

New language features in java7

new features : * Language support for collections * Automatic Resource Management * Improved Type Inference for Generic Instance Creation (diamond) * Underscores in numeric literals * Strings in switch * Binary literals * Simplified Varargs Method Invocation Refer:- http://code.joejag.com/2009/new-language-features-in-java-7/

MySQL :: tinyInt1isBit

One can enter values apart from 0 and 1 (say 2,3,?100) in a field with tinyint(1) type in MySql. MySql doesn?t complain. Now if you want to read inserted data using PHP it will return value as it is, however this will not work with Java. Java will throw an exception while reading same MySql data. Java treats tinyint(1) as Boolean and returns only true or false. Two solution either we can make our column tinyint(something > 1), or can add the connection property 'tinyInt1isBit=false' to our JDBC URL. Adding connection property 'tinyInt1isBit=false' to JDBC URL is risky since it will affect entire database data while reading the same using Java. Refer : http://forums.mysql.com/read.php?39,10652,10669#msg-10669

Class data sharing

CDS provides ability to share classes between Java virtual machines (JVMs). When classes are loaded by the JVM, they can be placed in a cache. When subsequent requests for that class are made, these requests are satisfied from the cache if possible rather than loading the class from a corresponding .jar file. Refer:- http://java.sun.com/j2se/1.5.0/docs/guide/vm/class-data-sharing.html

Java Web application and UTF-8

Java and UTF-8 Generally we can rely on Java as long as source strings are properly encoded. Please refer link: http://java.sun.com/docs/books/tutorial/i18n/text/convertintro.html, http://java.sun.com/javase/technologies/core/basic/intl/faq.jsp Tomcat and UTF-8 JSP pages must include the header: Update the file $CATALINA_HOME/conf/server.xml : add attribute URIEncoding="UTF-8" in Connector tag Add filter as suggested in the link : http://wiki.apache.org/tomcat/Tomcat/UTF-8 Tomcat UTF-8 Problem with request.getParameter(), http://answers.google.com/answers/threadview?id=580467 useBodyEncodingForURI : http://tomcat.apache.org/tomcat-5.5-doc/config/ajp.html MySql and UTF-8 We need our databases and tables to be in utf8 character set : ALTER tables with an SQL statement like - ALTER DATABASE db_name CHARACTER SET utf8 COLLATE utf8_general_ci; Start mysql-demon using option "--character-set-server=utf8" : mysqld ócharacter-set-server=utf8 May be use...

Java and “\u” ( blackslash u )

This article is related to escaping of “\u” backslash u [Unicode character] in Java Problem Statement: I have a string which consists of a DOS path something like "\sample\user_data\example".The “\u” (backslash u) in “\user_data” above gives “an invalid Unicode” JavaScript error in IE and hence my page isn’t displayed. I tried to replace “\u” (backslash u) in the string with something like "\ u"(backslash u) as I was not able to escape it. This also does not work . Java complier does not allow “\u” (backslash u) character and gives "Invalid unicode character sequence" error when I use it with replaceAll. Que 1: Can I escape the \u character some how in Java or JavaScript? Que 2: How can I replace all "\u" character in a string with something else like "\ u"? I have posted this query to some of the Java and JavaScript related groups. Here are the solutions I found Before going into the details about solution let us...

Securing MySQL (Java / Php Developers)

This Article would be useful to the people those who are using MySQL on a server connected to the Internet and hosted a web application (Developed using Java or/and PHP) on same server. This would also allow users to avoid a common security mistakes and Java developer to understand an issue related to UNIX socket. Usually MySQL uses port 3306 by default. This port should not be accessible from un-trusted hosts and should be closed, unless you really have a good reason to keep it open . This can be done on Server’s firewall or router, however M ySql provides its own security options like 1. skip-networking 2. bind-address 1. skip_networking This option was added in MySQL 3.22.23 and is recommended for systems where only local clients are allowed.To enable this option, put “skip-networking” in the mysql configuration file (/etc/mysql/my.conf). If this option is ON the server allows only local (non-TCP/IP) connections. Any clients (even clients running on the same host) using the remote ...