Răsfoiți Sursa

same as [4133]

janiii 15 ani în urmă
părinte
comite
062753e217

+ 21 - 29
L2_GameServer/java/com/l2jserver/gameserver/SevenSignsFestival.java

@@ -1030,7 +1030,6 @@ public class SevenSignsFestival implements SpawnListener
 	public void saveFestivalData(boolean updateSettings)
 	{
 		Connection con = null;
-		PreparedStatement statement = null;
 		
 		if (Config.DEBUG)
 			_log.info("SevenSignsFestival: Saving festival data to disk.");
@@ -1038,7 +1037,8 @@ public class SevenSignsFestival implements SpawnListener
 		try
 		{
 			con = L2DatabaseFactory.getInstance().getConnection();
-			
+			PreparedStatement statementUpdate = con.prepareStatement("UPDATE seven_signs_festival SET date=?, score=?, members=? WHERE cycle=? AND cabal=? AND festivalId=?");
+			PreparedStatement statementInsert = con.prepareStatement("INSERT INTO seven_signs_festival (festivalId, cabal, cycle, date, score, members) VALUES (?,?,?,?,?,?)");
 			for (Map<Integer, StatsSet> currCycleData : _festivalData.values())
 			{
 				for (StatsSet festivalDat : currCycleData.values())
@@ -1048,44 +1048,37 @@ public class SevenSignsFestival implements SpawnListener
 					String cabal = festivalDat.getString("cabal");
 					
 					// Try to update an existing record.
-					statement = con.prepareStatement("UPDATE seven_signs_festival SET date=?, score=?, members=? WHERE cycle=? AND cabal=? AND festivalId=?");
-					statement.setLong(1, Long.valueOf(festivalDat.getString("date")));
-					statement.setInt(2, festivalDat.getInteger("score"));
-					statement.setString(3, festivalDat.getString("members"));
-					statement.setInt(4, festivalCycle);
-					statement.setString(5, cabal);
-					statement.setInt(6, festivalId);
+					statementUpdate.setLong(1, Long.valueOf(festivalDat.getString("date")));
+					statementUpdate.setInt(2, festivalDat.getInteger("score"));
+					statementUpdate.setString(3, festivalDat.getString("members"));
+					statementUpdate.setInt(4, festivalCycle);
+					statementUpdate.setString(5, cabal);
+					statementUpdate.setInt(6, festivalId);
 					
 					// If there was no record to update, assume it doesn't exist and add a new one,
 					// otherwise continue with the next record to store.
-					if (statement.executeUpdate() > 0)
+					if (statementUpdate.executeUpdate() > 0)
 					{
 						if (Config.DEBUG)
-							_log.info("SevenSignsFestival: Updated data in DB (Cycle = " + festivalCycle + ", Cabal = " + cabal
-									+ ", FestID = " + festivalId + ")");
-						
-						statement.close();
+							_log.info("SevenSignsFestival: Updated data in DB (Cycle = " + festivalCycle + ", Cabal = " + cabal + ", FestID = " + festivalId + ")");
 						continue;
 					}
 					
-					statement.close();
-					
-					statement = con.prepareStatement("INSERT INTO seven_signs_festival (festivalId, cabal, cycle, date, score, members) VALUES (?,?,?,?,?,?)");
-					statement.setInt(1, festivalId);
-					statement.setString(2, cabal);
-					statement.setInt(3, festivalCycle);
-					statement.setLong(4, Long.valueOf(festivalDat.getString("date")));
-					statement.setInt(5, festivalDat.getInteger("score"));
-					statement.setString(6, festivalDat.getString("members"));
-					statement.execute();
-					statement.close();
+					statementInsert.setInt(1, festivalId);
+					statementInsert.setString(2, cabal);
+					statementInsert.setInt(3, festivalCycle);
+					statementInsert.setLong(4, Long.valueOf(festivalDat.getString("date")));
+					statementInsert.setInt(5, festivalDat.getInteger("score"));
+					statementInsert.setString(6, festivalDat.getString("members"));
+					statementInsert.execute();
+					statementInsert.clearParameters();
 					
 					if (Config.DEBUG)
-						_log.info("SevenSignsFestival: Inserted data in DB (Cycle = " + festivalCycle + ", Cabal = " + cabal
-								+ ", FestID = " + festivalId + ")");
+						_log.info("SevenSignsFestival: Inserted data in DB (Cycle = " + festivalCycle + ", Cabal = " + cabal + ", FestID = " + festivalId + ")");
 				}
 			}
-			
+			statementUpdate.close();
+			statementInsert.close();
 			con.close();
 			
 			// Updates Seven Signs DB data also, so call only if really necessary.
@@ -1100,7 +1093,6 @@ public class SevenSignsFestival implements SpawnListener
 		{
 			try
 			{
-				statement.close();
 				con.close();
 			}
 			catch (Exception e)

+ 17 - 14
L2_GameServer/java/com/l2jserver/gameserver/TradeController.java

@@ -83,14 +83,16 @@ public class TradeController
 			
 			int itemId, price, maxCount, currentCount, time;
 			long saveTimer;
+			PreparedStatement statement = con.prepareStatement("SELECT item_id, price, shop_id, "
+					+ L2DatabaseFactory.getInstance().safetyString("order")
+					+ ", count, currentCount, time, savetimer FROM merchant_buylists WHERE shop_id=? ORDER BY "
+					+ L2DatabaseFactory.getInstance().safetyString("order") + " ASC");
 			while (rset1.next())
 			{
-				PreparedStatement statement = con.prepareStatement("SELECT item_id, price, shop_id, "
-						+ L2DatabaseFactory.getInstance().safetyString("order")
-						+ ", count, currentCount, time, savetimer FROM merchant_buylists WHERE shop_id=? ORDER BY "
-						+ L2DatabaseFactory.getInstance().safetyString("order") + " ASC");
 				statement.setString(1, String.valueOf(rset1.getInt("shop_id")));
 				ResultSet rset = statement.executeQuery();
+				statement.clearParameters();
+				
 				int shopId = rset1.getInt("shop_id");
 				L2TradeList buy1 = new L2TradeList(shopId);
 				
@@ -150,8 +152,8 @@ public class TradeController
 				_nextListId = Math.max(_nextListId, buy1.getListId() + 1);
 				
 				rset.close();
-				statement.close();
 			}
+			statement.close();
 			rset1.close();
 			statement1.close();
 			
@@ -189,14 +191,16 @@ public class TradeController
 				
 				int itemId, price, maxCount, currentCount, time;
 				long saveTimer;
+				PreparedStatement statement = con.prepareStatement("SELECT item_id, price, shop_id, "
+						+ L2DatabaseFactory.getInstance().safetyString("order")
+						+ ", count, currentCount, time, savetimer FROM custom_merchant_buylists WHERE shop_id=? ORDER BY "
+						+ L2DatabaseFactory.getInstance().safetyString("order") + " ASC");
 				while (rset1.next())
 				{
-					PreparedStatement statement = con.prepareStatement("SELECT item_id, price, shop_id, "
-							+ L2DatabaseFactory.getInstance().safetyString("order")
-							+ ", count, currentCount, time, savetimer FROM custom_merchant_buylists WHERE shop_id=? ORDER BY "
-							+ L2DatabaseFactory.getInstance().safetyString("order") + " ASC");
 					statement.setString(1, String.valueOf(rset1.getInt("shop_id")));
 					ResultSet rset = statement.executeQuery();
+					statement.clearParameters();
+					
 					int shopId = rset1.getInt("shop_id");
 					L2TradeList buy1 = new L2TradeList(shopId);
 					
@@ -257,8 +261,8 @@ public class TradeController
 					_nextListId = Math.max(_nextListId, buy1.getListId() + 1);
 					
 					rset.close();
-					statement.close();
 				}
+				statement.close();
 				rset1.close();
 				statement1.close();
 				
@@ -309,13 +313,12 @@ public class TradeController
 	public void dataCountStore()
 	{
 		Connection con = null;
-		PreparedStatement statement;
 		int listId;
 		
 		try
 		{
 			con = L2DatabaseFactory.getInstance().getConnection();
-			
+			PreparedStatement statement = con.prepareStatement("UPDATE merchant_buylists SET currentCount=? WHERE item_id=? AND shop_id=?");
 			for (L2TradeList list : _lists.values())
 			{
 				if (list.hasLimitedStockItem())
@@ -327,16 +330,16 @@ public class TradeController
 						long currentCount;
 						if (item.hasLimitedStock() && (currentCount = item.getCurrentCount()) < item.getMaxCount())
 						{
-							statement = con.prepareStatement("UPDATE merchant_buylists SET currentCount=? WHERE item_id=? AND shop_id=?");
 							statement.setLong(1, currentCount);
 							statement.setInt(2, item.getItemId());
 							statement.setInt(3, listId);
 							statement.executeUpdate();
-							statement.close();
+							statement.clearParameters();
 						}
 					}
 				}
 			}
+			statement.close();
 		}
 		catch (Exception e)
 		{

+ 11 - 15
L2_GameServer/java/com/l2jserver/gameserver/datatables/HelperBuffTable.java

@@ -78,22 +78,18 @@ public class HelperBuffTable
 		Connection con = null;
 		try
 		{
-			try
-			{
-				con = L2DatabaseFactory.getInstance().getConnection();
-				PreparedStatement statement = con.prepareStatement("SELECT * FROM helper_buff_list");
-				ResultSet helperbuffdata = statement.executeQuery();
-				
-				fillHelperBuffTable(helperbuffdata);
-				helperbuffdata.close();
-				statement.close();
-			}
-			catch (Exception e)
-			{
-				_log.severe("Table helper_buff_list not found : Update your DataPack" + e);
-				e.printStackTrace();
-			}
+			con = L2DatabaseFactory.getInstance().getConnection();
+			PreparedStatement statement = con.prepareStatement("SELECT * FROM helper_buff_list");
+			ResultSet helperbuffdata = statement.executeQuery();
 			
+			fillHelperBuffTable(helperbuffdata);
+			helperbuffdata.close();
+			statement.close();
+		}
+		catch (Exception e)
+		{
+			_log.severe("Table helper_buff_list not found : Update your DataPack" + e);
+			e.printStackTrace();
 		}
 		finally
 		{

+ 4 - 3
L2_GameServer/java/com/l2jserver/gameserver/datatables/HennaTreeTable.java

@@ -60,14 +60,15 @@ public class HennaTreeTable
 			List<L2HennaInstance> list;
 			//int parentClassId;
 			//L2Henna henna;
+			PreparedStatement statement2 = con.prepareStatement("SELECT class_id, symbol_id FROM henna_trees where class_id=? ORDER BY symbol_id");
 			while (classlist.next())
 			{
 				list = new FastList<L2HennaInstance>();
 				classId = classlist.getInt("id");
-				PreparedStatement statement2 = con.prepareStatement("SELECT class_id, symbol_id FROM henna_trees where class_id=? ORDER BY symbol_id");
+				
 				statement2.setInt(1, classId);
 				ResultSet hennatree = statement2.executeQuery();
-				
+				statement2.clearParameters();
 				while (hennatree.next())
 				{
 					int id = hennatree.getInt("symbol_id");
@@ -97,13 +98,13 @@ public class HennaTreeTable
 				}
 				_hennaTrees.put(ClassId.values()[classId], list);
 				hennatree.close();
-				statement2.close();
 				count += list.size();
 				_log.fine("Henna Tree for Class: " + classId + " has " + list.size() + " Henna Templates.");
 			}
 			
 			classlist.close();
 			statement.close();
+			statement2.close();
 			
 			_log.config("HennaTreeTable: Loaded " + count + " Henna Tree Templates.");
 		}

+ 4 - 2
L2_GameServer/java/com/l2jserver/gameserver/datatables/SkillTreeTable.java

@@ -145,14 +145,16 @@ public class SkillTreeTable
 				int parentClassId;
 				L2SkillLearn skillLearn;
 				
+				PreparedStatement statement2 = con.prepareStatement("SELECT class_id, skill_id, level, name, sp, min_level FROM skill_trees where class_id=? ORDER BY skill_id, level");
 				while (classlist.next())
 				{
 					map = new FastMap<Integer, L2SkillLearn>();
 					parentClassId = classlist.getInt("parent_id");
 					classId = classlist.getInt("id");
-					PreparedStatement statement2 = con.prepareStatement("SELECT class_id, skill_id, level, name, sp, min_level FROM skill_trees where class_id=? ORDER BY skill_id, level");
+					
 					statement2.setInt(1, classId);
 					ResultSet skilltree = statement2.executeQuery();
+					statement2.clearParameters();
 					
 					if (parentClassId != -1)
 					{
@@ -179,7 +181,6 @@ public class SkillTreeTable
 					
 					getSkillTrees().put(ClassId.values()[classId], map);
 					skilltree.close();
-					statement2.close();
 					
 					count += map.size();
 					_log.fine("SkillTreeTable: skill tree for class " + classId + " has " + map.size() + " skills");
@@ -187,6 +188,7 @@ public class SkillTreeTable
 				
 				classlist.close();
 				statement.close();
+				statement2.close();
 			}
 			catch (Exception e)
 			{

+ 4 - 4
L2_GameServer/java/com/l2jserver/gameserver/model/AutoChatHandler.java

@@ -76,13 +76,14 @@ public class AutoChatHandler implements SpawnListener
 			statement = con.prepareStatement("SELECT * FROM auto_chat ORDER BY groupId ASC");
 			rs = statement.executeQuery();
 			
+			statement2 = con.prepareStatement("SELECT * FROM auto_chat_text WHERE groupId=?");
 			while (rs.next())
 			{
 				numLoaded++;
 				
-				statement2 = con.prepareStatement("SELECT * FROM auto_chat_text WHERE groupId=?");
 				statement2.setInt(1, rs.getInt("groupId"));
 				rs2 = statement2.executeQuery();
+				statement2.clearParameters();
 				
 				rs2.last();
 				String[] chatTexts = new String[rs2.getRow()];
@@ -95,10 +96,9 @@ public class AutoChatHandler implements SpawnListener
 				}
 				
 				registerGlobalChat(rs.getInt("npcId"), chatTexts, rs.getLong("chatDelay"));
-				
-				statement2.close();
 			}
-			
+			statement2.close();
+			rs.close();
 			statement.close();
 			
 			if (Config.DEBUG)

+ 5 - 4
L2_GameServer/java/com/l2jserver/gameserver/model/AutoSpawnHandler.java

@@ -136,6 +136,7 @@ public class AutoSpawnHandler
 			statement = con.prepareStatement("SELECT * FROM random_spawn ORDER BY groupId ASC");
 			rs = statement.executeQuery();
 			
+			statement2 = con.prepareStatement("SELECT * FROM random_spawn_loc WHERE groupId=?");
 			while (rs.next())
 			{
 				// Register random spawn group, set various options on the
@@ -148,19 +149,19 @@ public class AutoSpawnHandler
 				numLoaded++;
 				
 				// Restore the spawn locations for this spawn group/instance.
-				statement2 = con.prepareStatement("SELECT * FROM random_spawn_loc WHERE groupId=?");
 				statement2.setInt(1, rs.getInt("groupId"));
 				rs2 = statement2.executeQuery();
+				statement2.clearParameters();
 				
 				while (rs2.next())
 				{
 					// Add each location to the spawn group/instance.
 					spawnInst.addSpawnLocation(rs2.getInt("x"), rs2.getInt("y"), rs2.getInt("z"), rs2.getInt("heading"));
 				}
-				
-				statement2.close();
+				rs2.close();
 			}
-			
+			statement2.close();
+			rs.close();
 			statement.close();
 			
 			if (Config.DEBUG)

+ 10 - 8
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -14504,22 +14504,24 @@ public final class L2PcInstance extends L2Playable
 
 			if (list != null && list.size() > 0)
 			{
-				int	_position = 1;
+				int _position = 1;
 				statement = con.prepareStatement("DELETE FROM character_recipeshoplist WHERE charId=? ");
 				statement.setInt(1, getObjectId());
 				statement.execute();
 				statement.close();
+				
+				PreparedStatement statement2 = con.prepareStatement("INSERT INTO character_recipeshoplist (charId, Recipeid, Price, Pos) VALUES (?, ?, ?, ?)");
 				for (L2ManufactureItem item : list.getList())
 				{
-					statement = con.prepareStatement("INSERT INTO character_recipeshoplist (charId, Recipeid, Price, Pos) VALUES (?, ?, ?, ?)");
-					statement.setInt(1, getObjectId());	
-					statement.setInt(2, item.getRecipeId());
-					statement.setLong(3, item.getCost());
-					statement.setInt(4, _position);
-					statement.execute();
-					statement.close();
+					statement2.setInt(1, getObjectId());
+					statement2.setInt(2, item.getRecipeId());
+					statement2.setLong(3, item.getCost());
+					statement2.setInt(4, _position);
+					statement2.execute();
+					statement2.clearParameters();
 					_position++;
 				}
+				statement2.close();
 			}
 		}
 		catch (Exception e)

+ 1 - 1
L2_GameServer/java/com/l2jserver/gameserver/model/entity/Couple.java

@@ -56,7 +56,7 @@ public class Couple
 			
 			con = L2DatabaseFactory.getInstance().getConnection();
 			
-			statement = con.prepareStatement("Select * from mods_wedding where id = ?");
+			statement = con.prepareStatement("SELECT * FROM mods_wedding WHERE id = ?");
 			statement.setInt(1, _Id);
 			rs = statement.executeQuery();
 			

+ 4 - 4
L2_GameServer/java/com/l2jserver/gameserver/model/olympiad/Olympiad.java

@@ -1286,15 +1286,15 @@ public class Olympiad
 		try
 		{
 			con = L2DatabaseFactory.getInstance().getConnection();
-			PreparedStatement statement;
+			PreparedStatement statement = con.prepareStatement(OLYMPIAD_GET_HEROS);
 			ResultSet rset;
 			StatsSet hero;
 			L2FastList<StatsSet> soulHounds = new L2FastList<StatsSet>();
 			for (int i = 0; i < HERO_IDS.length; i++)
 			{
-				statement = con.prepareStatement(OLYMPIAD_GET_HEROS);
 				statement.setInt(1, HERO_IDS[i]);
 				rset = statement.executeQuery();
+				statement.clearParameters();
 				
 				if (rset.next())
 				{
@@ -1317,10 +1317,10 @@ public class Olympiad
 						_heroesToBe.add(hero);
 					}
 				}
-				
-				statement.close();
 				rset.close();
 			}
+			statement.close();
+			
 			switch (soulHounds.size())
 			{
 				case 0:

+ 5 - 4
L2_GameServer/java/com/l2jserver/gameserver/network/communityserver/readpackets/RequestWorldInfo.java

@@ -14,22 +14,23 @@
  */
 package com.l2jserver.gameserver.network.communityserver.readpackets;
 
+import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.util.logging.Logger;
 
+import org.netcon.BaseReadPacket;
+
 import com.l2jserver.L2DatabaseFactory;
 import com.l2jserver.gameserver.datatables.ClanTable;
 import com.l2jserver.gameserver.model.L2Clan;
 import com.l2jserver.gameserver.model.L2World;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.network.communityserver.CommunityServerThread;
 import com.l2jserver.gameserver.network.communityserver.writepackets.InitWorldInfo;
 import com.l2jserver.gameserver.network.communityserver.writepackets.WorldInfo;
-import com.l2jserver.gameserver.network.communityserver.CommunityServerThread;
 import com.l2jserver.gameserver.templates.StatsSet;
 
-import org.netcon.BaseReadPacket;
-
 /**
  * @authors  Forsaiken, Gigiikun
  */
@@ -78,7 +79,7 @@ public final class RequestWorldInfo extends BaseReadPacket
 				_log.info("Transfering " + ClanTable.getInstance().getClans().length + " Clan data to CB server.");
 				
 				// players data
-				java.sql.Connection con = null;
+				Connection con = null;
 				StatsSet[] charDatList = new StatsSet[MAX_ARRAY];
 				try
 				{

+ 4 - 3
L2_GameServer/java/com/l2jserver/gameserver/network/communityserver/writepackets/InitWorldInfo.java

@@ -14,6 +14,7 @@
  */
 package com.l2jserver.gameserver.network.communityserver.writepackets;
 
+import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.util.List;
@@ -22,6 +23,8 @@ import java.util.logging.Logger;
 
 import javolution.util.FastList;
 
+import org.netcon.BaseWritePacket;
+
 import com.l2jserver.L2DatabaseFactory;
 import com.l2jserver.gameserver.datatables.ClanTable;
 import com.l2jserver.gameserver.instancemanager.CastleManager;
@@ -29,8 +32,6 @@ import com.l2jserver.gameserver.model.L2Clan;
 import com.l2jserver.gameserver.model.entity.Castle;
 import com.l2jserver.gameserver.templates.StatsSet;
 
-import org.netcon.BaseWritePacket;
-
 /**
  * @authors  Forsaiken, Gigiikun
  */
@@ -94,7 +95,7 @@ public final class InitWorldInfo extends BaseWritePacket
 					super.writeD(p.getInteger("clanid"));
 					super.writeD(p.getInteger("accesslevel"));
 					super.writeC(p.getInteger("online"));
-					java.sql.Connection con = null;
+					Connection con = null;
 					FastList<Integer> list = FastList.newInstance();
 					
 					try

+ 3 - 2
L2_GameServer/java/com/l2jserver/gsregistering/BaseGameServerRegister.java

@@ -20,6 +20,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.math.BigInteger;
+import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
 import java.util.Locale;
@@ -351,7 +352,7 @@ public abstract class BaseGameServerRegister
      */
     public static void unregisterGameServer(int id) throws SQLException
     {
-    	java.sql.Connection con = null;
+    	Connection con = null;
 		PreparedStatement statement = null;
 		
 		try
@@ -390,7 +391,7 @@ public abstract class BaseGameServerRegister
     
     public static void unregisterAllGameServers() throws SQLException
 	{
-		java.sql.Connection con = null;
+		Connection con = null;
 		PreparedStatement statement = null;
 		
 		try