This week's book giveaway is in the Mac OS forum.
We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line!
See this thread for details.
The moose likes Beginning Java and the fly likes Matching a String with a certain record Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Matching a String with a certain record" Watch "Matching a String with a certain record" New topic
Author

Matching a String with a certain record

chris le
Greenhorn

Joined: Jul 30, 2004
Posts: 15
Hey guys, I'm a ColdFusion developer and have just started into java.
In ColdFusion if you want to see if a string matched the name of a column value (from a database) you would do this:



How would I check for a value like this in Java?
Here's what I got:



Any ideas?
Thanks guys and take care,

Chris
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 11350
    
  16

common question. simple answer:

don't use "==", it's checking for something else entirely than what you think it is.

use the ".equals()" method...


if you search around on this site, you're bound to find a more tech. answer. or, wait a while and somebody will post it here (i may myself later when i have more time...)

good luck!!!



There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
chris le
Greenhorn

Joined: Jul 30, 2004
Posts: 15
Thanks for the help!
But here's another question along the same lines.
Why does it have to be in a loop to work.

I have tried this:

It doesn't match it because the cursor is still on the last record "John".
Why is this happening even after I user the first() method? I even tried the absolute method.

Any ideas?
Thanks!
Julian Kennedy
Ranch Hand

Joined: Aug 02, 2004
Posts: 823
Hi Chris,

The JDBC code you're using is at a lower level than ColdFusion tags. It gives you a lot more control over how you interact with the database. Consequently it requires more code to do the simple things. ColdFusion is akin to the tags provided by JSTL or Struts. These technologies do the simpler things very succinctly, further hiding the complexity behind the scenes from the developer. In simple terms a loop is required as your ResultSet returns more than one row.

Your second question is more difficult. Your JDBC driver has given you a ResultSet of ResultSet.TYPE_FORWARD_ONLY, which suggests only JDBC 1.0 support. JDBC 2.0 introduced scrollable ResultSets which support the first() and last() methods, etc. Calling rs.first() on a forward-only ResultSet has no effect, hence the ResultSet still points at the last record found by rs.next().

Hope that helps. As you appear to crave a full understanding of these concepts I suggest you have a good browse through the API documentation for the java.sql package on Sun's website and also study the JDBC 2.0 tutorial there.

Jules
Dirk Schreckmann
Sheriff

Joined: Dec 10, 2001
Posts: 7023
Note that the API documentation Julian mentioned is available at
http://java.sun.com/j2se/1.4.2/docs/api/

Sun's JDBC tutorial is available at
http://java.sun.com/docs/books/tutorial/jdbc/index.html

Moving this to the JDBC forum...
[ August 20, 2004: Message edited by: Dirk Schreckmann ]

[How To Ask Good Questions] [JavaRanch FAQ Wiki] [JavaRanch Radio]
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Matching a String with a certain record