@@ -86,7 +86,7 @@ private static void insertUDT(UDT udt, String keyspace, Session session, Insert
8686
8787 Iterable elements = Iterable .class .cast (udt .get ());
8888 Object udtValue = getUdtValue (userType , elements );
89- insert .value (udt . getName (), udtValue );
89+ insert .value (getName (udt ), udtValue );
9090 }
9191
9292 private static Object getUdtValue (UserType userType , Iterable elements ) {
@@ -98,7 +98,7 @@ private static Object getUdtValue(UserType userType, Iterable elements) {
9898 Column column = Column .class .cast (object );
9999 Object convert = ValueUtil .convert (column .getValue ());
100100 TypeCodec <Object > objectTypeCodec = CodecRegistry .DEFAULT_INSTANCE .codecFor (convert );
101- udtValue .set (column . getName (), convert , objectTypeCodec );
101+ udtValue .set (getName (column ), convert , objectTypeCodec );
102102
103103 } else if (Iterable .class .isInstance (object )) {
104104 udtValues .add (getUdtValue (userType , Iterable .class .cast (Iterable .class .cast (object ))));
@@ -115,9 +115,9 @@ private static void insertSingleField(Column column, Insert insert) {
115115 Object value = column .get ();
116116 try {
117117 CodecRegistry .DEFAULT_INSTANCE .codecFor (value );
118- insert .value (column . getName (), value );
118+ insert .value (getName (column ), value );
119119 } catch (CodecNotFoundException exp ) {
120- insert .value (column . getName (), ValueUtil .convert (column .getValue ()));
120+ insert .value (getName (column ), ValueUtil .convert (column .getValue ()));
121121 }
122122
123123
@@ -165,25 +165,25 @@ private static void createClause(Optional<ColumnCondition> columnConditionOption
165165 Object value = column .getValue ().get ();
166166 switch (condition ) {
167167 case EQUALS :
168- clauses .add (QueryBuilder .eq (column . getName (), value ));
168+ clauses .add (QueryBuilder .eq (getName (column ), value ));
169169 return ;
170170 case GREATER_THAN :
171- clauses .add (QueryBuilder .gt (column . getName (), value ));
171+ clauses .add (QueryBuilder .gt (getName (column ), value ));
172172 return ;
173173 case GREATER_EQUALS_THAN :
174- clauses .add (QueryBuilder .gte (column . getName (), value ));
174+ clauses .add (QueryBuilder .gte (getName (column ), value ));
175175 return ;
176176 case LESSER_THAN :
177- clauses .add (QueryBuilder .lt (column . getName (), value ));
177+ clauses .add (QueryBuilder .lt (getName (column ), value ));
178178 return ;
179179 case LESSER_EQUALS_THAN :
180- clauses .add (QueryBuilder .lte (column . getName (), value ));
180+ clauses .add (QueryBuilder .lte (getName (column ), value ));
181181 return ;
182182 case IN :
183- clauses .add (QueryBuilder .in (column . getName (), getIinValue (value )));
183+ clauses .add (QueryBuilder .in (getName (column ), getIinValue (value )));
184184 return ;
185185 case LIKE :
186- clauses .add (QueryBuilder .like (column . getName (), value ));
186+ clauses .add (QueryBuilder .like (getName (column ), value ));
187187 return ;
188188 case AND :
189189 for (ColumnCondition cc : column .get (new TypeReference <List <ColumnCondition >>() {
@@ -198,6 +198,15 @@ private static void createClause(Optional<ColumnCondition> columnConditionOption
198198 }
199199 }
200200
201+ private static String getName (Column column ) {
202+
203+ String name = column .getName ();
204+ if (name .charAt (0 ) == '_' ) {
205+ return "\" " + name + "\" " ;
206+ }
207+ return name ;
208+ }
209+
201210 private static Object [] getIinValue (Object value ) {
202211 if (Iterable .class .isInstance (value )) {
203212 Iterable values = Iterable .class .cast (value );
0 commit comments