You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-java@ibatis.apache.org by vadboss <va...@gmail.com> on 2010/05/03 11:09:46 UTC

IBatis: boolean mapping misunderstanding

I have in the table a boolean (tinyint(1)) value. I don't know why, but
ibatis always gets it as true, whether it is 0, or 1 in database.

Who knows what is the cause?
-- 
View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28432952.html
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by vadboss <va...@gmail.com>.
<insert id="clockUserIn" parameterType="domain.ClockUser">
		INSERT INTO
		clock_operations (user_id, date, clock_in)
		VALUES (#{id},
		#{lastActionDate}, true)
</insert>

<insert id="clockUserOut" parameterType="domain.ClockUser">
	        INSERT INTO
		clock_operations (user_id, date, clock_in)
		VALUES (#{id},
		#{lastActionDate}, false)
</insert>

This works ok. FOr the first case it inserts 1 and 0 for the second
statement.




Larry Meadors wrote:
> 
> OK, so you have a boolean in your bean, and a tinyint in your database
> and it's getting mapped to true regardless of the int value.
> 
> What about insert/update? Are they setting the database to 0 and 1, or
> always using the same value?
> 
> Larry
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28434560.html
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by Larry Meadors <la...@gmail.com>.
OK, so you have a boolean in your bean, and a tinyint in your database
and it's getting mapped to true regardless of the int value.

What about insert/update? Are they setting the database to 0 and 1, or
always using the same value?

Larry

---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by vadboss <va...@gmail.com>.
package domain;

import java.util.Date;

public class ClockUser {

	private int id;
	private String username;
	private String password;
	private boolean clockedIn;
	private Date lastActionDate;

	public ClockUser() {
		lastActionDate = new Date();
	}

	public ClockUser(String username, String password) {
		this();
		this.username = username;
		this.password = password;
	}

	public ClockUser(int id, String username, String password,
			boolean clockedIn, Date lastActionDate) {
		this.id = id;
		this.username = username;
		this.password = password;
		this.clockedIn = clockedIn;
		this.lastActionDate = lastActionDate;
	}

	public void resetLastActionDateToCurrent() {
		lastActionDate = new Date();
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public boolean isClockedIn() {
		return clockedIn;
	}

	public void setClockedIn(boolean clockedIn) {
		this.clockedIn = clockedIn;
	}

	public Date getLastActionDate() {
		return lastActionDate;
	}

	public void setLastActionDate(Date lastActionDate) {
		this.lastActionDate = lastActionDate;
	}
}




Larry Meadors wrote:
> 
> and domain.ClockUser is?
> 
> On Mon, May 3, 2010 at 5:59 AM, vadboss <va...@gmail.com> wrote:
>>
>> It's IBatis 3.
>>
>> Here is the statement:
>> <select id="selectByUsernameAndPassword" parameterType="domain.ClockUser"
>>                resultType="domain.ClockUser">
>>                SELECT users.id, users.username, users.password,
>>                MAX(clock_operations.date) as lastActionDate,
>>                clock_operations.clock_in as clockedIn
>>                FROM users,
>>                clock_operations
>>                WHERE users.id=clock_operations.user_id AND
>> users.username=#{username}
>>                AND users.password=#{password};
>> </select>
>>
>>
>>
>> Larry Meadors wrote:
>>>
>>> Maybe with some info.
>>>
>>> Using ibatis2 or 3?
>>>
>>> Can you provide your mapped statement?
>>>
>>> Throw us a bone here. :P
>>>
>>> Larry
>>>
>>>
>>> On Mon, May 3, 2010 at 3:09 AM, vadboss <va...@gmail.com> wrote:
>>>>
>>>> I have in the table a boolean (tinyint(1)) value. I don't know why, but
>>>> ibatis always gets it as true, whether it is 0, or 1 in database.
>>>>
>>>> Who knows what is the cause?
>>>> --
>>>> View this message in context:
>>>> http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28432952.html
>>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>>>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28434308.html
>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28434375.html
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by Larry Meadors <la...@gmail.com>.
and domain.ClockUser is?

On Mon, May 3, 2010 at 5:59 AM, vadboss <va...@gmail.com> wrote:
>
> It's IBatis 3.
>
> Here is the statement:
> <select id="selectByUsernameAndPassword" parameterType="domain.ClockUser"
>                resultType="domain.ClockUser">
>                SELECT users.id, users.username, users.password,
>                MAX(clock_operations.date) as lastActionDate,
>                clock_operations.clock_in as clockedIn
>                FROM users,
>                clock_operations
>                WHERE users.id=clock_operations.user_id AND users.username=#{username}
>                AND users.password=#{password};
> </select>
>
>
>
> Larry Meadors wrote:
>>
>> Maybe with some info.
>>
>> Using ibatis2 or 3?
>>
>> Can you provide your mapped statement?
>>
>> Throw us a bone here. :P
>>
>> Larry
>>
>>
>> On Mon, May 3, 2010 at 3:09 AM, vadboss <va...@gmail.com> wrote:
>>>
>>> I have in the table a boolean (tinyint(1)) value. I don't know why, but
>>> ibatis always gets it as true, whether it is 0, or 1 in database.
>>>
>>> Who knows what is the cause?
>>> --
>>> View this message in context:
>>> http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28432952.html
>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>
>>
>>
>
> --
> View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28434308.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by vadboss <va...@gmail.com>.
It's IBatis 3.

Here is the statement:
<select id="selectByUsernameAndPassword" parameterType="domain.ClockUser"
		resultType="domain.ClockUser">
		SELECT users.id, users.username, users.password,
		MAX(clock_operations.date) as lastActionDate,
		clock_operations.clock_in as clockedIn
		FROM users,
		clock_operations
		WHERE users.id=clock_operations.user_id AND users.username=#{username}
		AND users.password=#{password};
</select>



Larry Meadors wrote:
> 
> Maybe with some info.
> 
> Using ibatis2 or 3?
> 
> Can you provide your mapped statement?
> 
> Throw us a bone here. :P
> 
> Larry
> 
> 
> On Mon, May 3, 2010 at 3:09 AM, vadboss <va...@gmail.com> wrote:
>>
>> I have in the table a boolean (tinyint(1)) value. I don't know why, but
>> ibatis always gets it as true, whether it is 0, or 1 in database.
>>
>> Who knows what is the cause?
>> --
>> View this message in context:
>> http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28432952.html
>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28434308.html
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by Larry Meadors <la...@gmail.com>.
Maybe with some info.

Using ibatis2 or 3?

Can you provide your mapped statement?

Throw us a bone here. :P

Larry


On Mon, May 3, 2010 at 3:09 AM, vadboss <va...@gmail.com> wrote:
>
> I have in the table a boolean (tinyint(1)) value. I don't know why, but
> ibatis always gets it as true, whether it is 0, or 1 in database.
>
> Who knows what is the cause?
> --
> View this message in context: http://old.nabble.com/IBatis%3A-boolean-mapping-misunderstanding-tp28432952p28432952.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org


Re: IBatis: boolean mapping misunderstanding

Posted by Guy Rouillier <gu...@burntmail.com>.
On 5/3/2010 5:09 AM, vadboss wrote:
>
> I have in the table a boolean (tinyint(1)) value. I don't know why, but
> ibatis always gets it as true, whether it is 0, or 1 in database.
>
> Who knows what is the cause?

You provided very little information.  What version of iBATIS?  What 
database and version?  What does the SQL and the ResultMap look like? 
I'm doing this successfully with Oracle 10g and iBATIS 3.

-- 
Guy Rouillier

---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org